領導說「要有風控」,因而咱們開始研究Nginx來作風控。
html
首先,天然是解決安裝問題,找了下面幾篇文章java
http://www.cnblogs.com/yjf512/archive/2012/03/27/2419577.html nginx
http://huoding.com/2012/08/31/156 git
先根據這些文章,看看是否能夠順利安裝!
github
0)環境介紹redis
x.x.177.25緩存
1) Lua編譯器-LuaJIT測試
wget http://luajit.org/download/LuaJIT-2.0.4.tar.gz
lua
tar -zvxf LuaJIT-2.0.4.tar.gzspa
cd LuaJIT-2.0.4
make
make install
這樣,安裝的文件就在 lib和include是直接放在/usr/local/lib和usr/local/include
2) Nginx_Lua相關的全部模塊文件準備
wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
本身解壓縮
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz
tar -zvxf v0.10.2.tar.gz
3)nginx文件準備
wget http://nginx.org/download/nginx-1.10.0.tar.gz
tar -zvxf nginx-1.10.0.tar.gz
cd nginx-1.10.0
4)nginx安裝
export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0
./configure --prefix=/opt/nginx --with-http_ssl_module --add-module=/root/ngx_lua/ngx_devel_kit-0.2.19 --add-module=/root/ngx_lua/lua-nginx-module-0.10.2
make -j2
make install
===========================================================
5)測試Nginx是否安裝成功
/opt/nginx/sbin/nginx --- 啓動 Nginx
此時使用的配置文件爲 /opt/nginx/conf/nginx.conf
而後會報錯: ./sbin/nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object
解決方案見:
http://www.bkjia.com/xtzh/980279.html
其實就是:
echo "/usr/local/lib" >>/etc/ld.so.conf ldconfig
而後訪問I:80 就能夠看到下面的界面,表示安裝成功!
6)測試Nginx是否支持Lua
如何測試呢?咱們能夠寫一個小例子以下:
nginxconfig中加入
location /hello {
default_type 'text/plain';
content_by_lua 'ngx.say("hello, lua")';
}
使用/to/nginx/sbin/nginx –t 檢查nginx配置,此時應該沒有報錯
/to/nginx/sbin/nginx #啓動nginx
或者/to/nginx/sbin/nginx –s reload #重啓nginx
http://ip:port/hello
會出現"hello,lua"
7)關閉Nginx
http://www.cnblogs.com/jianxie/p/3990377.html
從容中止 kill -QUIT 主進程號
附錄:參考資料
http://www.cnblogs.com/zhuhongbao/archive/2013/06/04/3118061.html
http://www.ttlsa.com/nginx/nginx-and-lua/ 有講到redis緩存的使用。
https://github.com/openresty/lua-nginx-module --- 淘寶出品