ngx_lua 模块安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ngx_lua 模块安装相关的知识,希望对你有一定的参考价值。

一、使用环境

1、nginx v1.11.2

2、Lua jit v2.0.4

3、ngx_lua_module v0.10.8

4、NDK v0.3.0

:目前ngx_lua模块对Nginx支持版本最高为(1.11.2)。文章时间(2017年4月24日16:07:36)


二、相关软件下载地址

1、Nginx [http://nginx.org/]

2、Lua Jit [http://luajit.org/download.html]

3、ngx_lua_module [https://github.com/openresty/lua-nginx-module/tags]

4、NDK [https://github.com/simpl/ngx_devel_kit/tags]


三、Lua jit 安装

shell > wget 
shell > tar xf LuaJIT-2.0.4.tar.gz
shell > cd LuaJIT-2.0.4
shell > make && make install
shell > ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2

:如果不

ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2

则会在Nginx 启动时报错: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

好奇的朋友可以尝试一下


四、ngx_lua_module 和 NDK准备

shell > pwd
/usr/local/src/nginx
shell > wget
shell > tar xf v0.3.0
#解压v0.3.0 后,文件名为ngx_devel_kit-0.3.0
shell > wget https://github.com/openresty/lua-nginx-module/archive/v0.10.8.tar.gz
shell > tar xf v0.10.8
#解压v0.10.8后,文件名为lua-nginx-module-0.10.8


五、安装Nginx及ngx_lua、NDK模块

shell > yum install -y pcre-devel openssl-devel geoip-devel
#pcre必须,正则支持。
#geoip-devel 必须。因为代码中会使用到geoip数据
shell > export LUAJIT_LIB=/usr/local/lib
shell > export LUAJIT_INC=/usr/local/include/luajit-2.0
shell > useradd nginx -s /sbin/nologin -M
shell > wget 
shell > tar xf nginx-1.11.2.tar.gz
shell > cd nginx-1.11.2
shell > ./configure --prefix=/usr/local/nginx-1.11.2 --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module --with-http_geoip_module --add-module=/usr/local/src/nginx/ngx_devel_kit-0.3.0/ --add-module=/usr/local/src/nginx/lua-nginx-module-0.10.8/
shell > make -j2
shell > make install


六、测试Nginx及nginx_lua模块是否安装成功

shell > cd /usr/local/nginx-1.11.2
shell > egrep -v "#|^$"  conf/nginx.conf.default > conf/nginx.conf 
#初始化Nginx的配置文件。主要是Nginx的默认配置文件太多注释,加上自己能看懂Nginx的配置,
以及看起来不够清爽

技术分享

如图在server字段中,添加下面代码

location = /hello {
    access_by_lua ‘
        ngx.say("hello")
    ‘;
}

注意标点符号,空格,大小写

shell > /usr/local/nginx-1.11.2/sbin/nginx
启动Nginx

测试:

技术分享


本文出自 “hacker” 博客,请务必保留此出处http://homeforhacker.blog.51cto.com/8720038/1919704

以上是关于ngx_lua 模块安装的主要内容,如果未能解决你的问题,请参考以下文章

ngx_lua 模块

ngx_lua 模块详细讲解

安装nginx+ngx_lua支持WAF防护功能

nginx+ngx_lua支持WAF防护功能

使用ngx_lua构建高并发应用

Nginx框架之Lua拓展