什么是openresty弓候?
OpenResty? 是一款基于 NGINX 和 LuaJIT 的 Web 平臺菇存。
OpenResty(也稱為 ngx_openresty)是一個(gè)全功能的 Web 應(yīng)用服務(wù)器依鸥。它打包了標(biāo)準(zhǔn)的 Nginx 核心悼沈,很多的常用的第三方模塊,以及它們的大多數(shù)依賴項(xiàng)怨喘。
通過揉和眾多設(shè)計(jì)良好的 Nginx 模塊拱绑,OpenResty 有效地把 Nginx 服務(wù)器轉(zhuǎn)變?yōu)橐粋€(gè)強(qiáng)大的 Web 應(yīng)用服務(wù)器廉羔,基于它開發(fā)人員可以使用 Lua 編程語言對 Nginx 核心以及現(xiàn)有的各種 Nginx C 模塊進(jìn)行腳本編程塘揣,構(gòu)建出可以處理一萬以上并發(fā)請求的極端高性能的 Web 應(yīng)用。
借助于Nginx的事件驅(qū)動模型和非阻塞IO才写,可以實(shí)現(xiàn)高性能的Web應(yīng)用程序奖蔓。而且OpenResty提供了大量組件如Mysql吆鹤、Redis、Memcached等等疑务,使在Nginx上開發(fā)Web應(yīng)用更方便更簡單梗醇。目前京東叙谨,淘寶牙肝、去哪兒網(wǎng)等都在使用Nginx+Lua架構(gòu)。
一虫溜、安裝步驟
Windows7/windows10 平臺
其他平臺參考安裝步驟:http://openresty.org/cn/installation.html
1衡楞,本人win10敦姻,下載openresty_for_windows_1.7.10.2001_64bit.zip,解壓縮在F:\software\openrestry目錄下迷守,
nginx目錄下兑凿,雙擊Nginx.exe或者進(jìn)入win+R茵瘾,進(jìn)入cmd ,使用命令start nginx啟動圣絮。
2扮匠,驗(yàn)證是否啟動成功
其中一個(gè)是 master 進(jìn)程餐禁,另一個(gè)是 worker 進(jìn)程突照。
3讹蘑,打開瀏覽器輸入localhost,可以看到歡迎界面陨舱。
雖然openrestry也發(fā)布特windows版本版仔,還是希望各位有條件的盡可能使用linux環(huán)境蛮粮。
github源碼地址:https://github.com/openresty/openresty
4.編輯nginx.conf配置文件 :
1)在http部分添加lua的配置
#lua模塊路徑,多個(gè)之間”;”分隔莺奔,其中”;;”表示默認(rèn)搜索路徑令哟,默認(rèn)到/usr/servers/nginx下找
lua_package_path "servers/lualib/?.lua;;";? #lua 模塊
lua_package_cpath "servers/lualib/?.so;;";? #c模塊
#lua_package_path "$prefix/?.luac;$prefix/?.lua;;";
2)為了以后更好的開發(fā)和維護(hù)妨蛹,在conf目錄下建立lua.conf
#lua.conf
server?{
? ? ?listen ? ?80;
? ? ?server_name ? ?_;
}
3)在nginx.conf中的http部分添加include lua.conf包含此文件片段,incloud lua.conf
可以使用nginx -t檢測一下是否配置成功,如果成功會有如下提示:
nginx: the configuration file /usr/servers/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/servers/nginx/conf/nginx.conf test is successful
如果蛙卤,失敗請到log下查看err.log表窘,查看詳細(xì)日志信息乐严。
好了昂验,來吧,試一把吧既琴,hello world!
在lua.conf文件的server部分添加
location /lua {
default_type ?'text/html';
content_by_lua ? ?'ngx.say("hello ?world甫恩!")';
}
4)重啟nginx逆济,nginx? -s reload
5)輸入http://http://192.168.10.105/lua