什么是openresty?
OpenResty? 是一款基于 NGINX 和 LuaJIT 的 Web 平臺。
OpenResty(也稱為 ngx_openresty)是一個全功能的 Web 應用服務器。它打包了標準的 Nginx 核心,很多的常用的第三方模塊,以及它們的大多數依賴項。
通過揉和眾多設計良好的 Nginx 模塊,OpenResty 有效地把 Nginx 服務器轉變為一個強大的 Web 應用服務器,基于它開發人員可以使用 Lua 編程語言對 Nginx 核心以及現有的各種 Nginx C 模塊進行腳本編程,構建出可以處理一萬以上并發請求的極端高性能的 Web 應用。
借助于Nginx的事件驅動模型和非阻塞IO,可以實現高性能的Web應用程序。而且OpenResty提供了大量組件如Mysql、Redis、Memcached等等,使在Nginx上開發Web應用更方便更簡單。目前京東,淘寶、去哪兒網等都在使用Nginx+Lua架構。
一、安裝步驟
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或者進入win+R,進入cmd ,使用命令start nginx啟動。
2,驗證是否啟動成功
其中一個是 master 進程,另一個是 worker 進程。
3,打開瀏覽器輸入localhost,可以看到歡迎界面。
雖然openrestry也發布特windows版本,還是希望各位有條件的盡可能使用linux環境。
github源碼地址:https://github.com/openresty/openresty
4.編輯nginx.conf配置文件 :
1)在http部分添加lua的配置
#lua模塊路徑,多個之間”;”分隔,其中”;;”表示默認搜索路徑,默認到/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)為了以后更好的開發和維護,在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,查看詳細日志信息。
好了,來吧,試一把吧,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