1、OpenResty簡介
OpenResty是一個基於 Nginx與 Lua的高性能 Web平臺,其內部集成了大量精良的 Lua 庫、第三方模塊以及大多數的依賴項。
用於方便地搭建可以處理超高併發、擴展性極高的動態 Web 應用、Web 服務和動態網關。
2、Lua簡介
Lua是一個簡潔、輕量、可擴展的程序設計語言,其設計目的是爲了嵌入應用程序中,從而爲應用程序提供靈活的擴展和定製功能。
Lua由標準C編寫而成,代碼簡潔優美,幾乎在全部操做系統和平臺上均可以編譯,運行。
3、OpenResty安裝
一、安裝依賴庫
yum -y install readline-devel pcre-devel openssl-devel gcc
二、安裝OpenResty
tar xf openresty-1.11.2.3.tar.gz
cd openresty-1.11.2.3
./configure --prefix=/usr/local/openresty --with-luajit --with-http_iconv_module --with-pcre --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_flv_module --with-http_realip_module
gmake
gmake install
ln -s /usr/local/openresty/bin/resty /usr/bin/resty
啓動nginx服務這裏要注意的是nginx必定要是openresty中的nginx的服務,不然會提示lua的配置參數沒法識別,
能夠執行這個命令:ln -s /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx
若是/usr/sbin目錄下存在nginx,能夠先將改文件移到其餘位置
在OpenResty安裝好後須要將nginx和resty命令配置到環境變量中, 使用nginx -v和resty -v能正常輸出。nginx
三、配置wafgit
git clone https://github.com/unixhot/waf.git
cp waf/* /usr/local/openresty/nginx/conf
編輯nginx.conf在http中添加以下內容:
lua_shared_dict limit 50m;
lua_package_path "/usr/local/openresty/nginx/conf/waf/?.lua";
init_by_lua_file "/usr/local/openresty/nginx/conf/waf/init.lua";
access_by_lua_file "/usr/local/openresty/nginx/conf/waf/access.lua";