Nginx安装lua-nginx-module模块

ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本

反正就是很牛逼很牛逼的样子,我现在是网站必装,以下内容为oneinstack 里面lnmp 的基础上安装。

前期工作

安装依赖包,避免编译出错:

代码语言:javascript
复制
yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel gcc g++ gcc-c++ gd-devel

因为现在我安装是nginx 1.14,所以下载的组件都比较新,旧版本好像有冲突。

下载模块

代码语言:javascript
复制
cd lnmp/src
wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz  #下载LuaJIT
wget https://github.com/simplresty/ngx_devel_kit/archive/v0.3.0.tar.gz  #下载ngx_devle_kit
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.13.tar.gz  #下载lua_nginx_module

解压

代码语言:javascript
复制
tar xzf LuaJIT-2.0.5.tar.gz
tar xzf v0.3.0.tar.gz
tar xzf v0.10.13.tar.gz
tar -xzf nginx-1.14.0.tar.gz
tar -xzf openssl-1.0.2o.tar.gz

安装LuaJIT

代码语言:javascript
复制
cd LuaJIT-2.0.5
make && make install
export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0

编译

代码语言:javascript
复制
cd nginx-1.14.0
make clean

以下命令根据你实际情况来定

代码语言:javascript
复制
./configure --prefix=/usr/local/nginx --user=www --group=www --with-ld-opt=-Wl,-rpath,/usr/local/include/luajit-2.0 --with-http_stub_status_module  --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.0.2o --with-pcre=../pcre-8.42 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=/root/lnmp/src/lua-nginx-module-0.10.13 --add-module=/root/lnmp/src/ngx_devel_kit-0.3.0

make && make install
mv /usr/local/nginx/sbin/nginx{,_date +%F}
cp objs/nginx /usr/local/nginx/sbin

开启lua

在/usr/local/nginx/conf/nginx.conf 加入

代码语言:javascript
复制
  lua_shared_dict limit 20m;
lua_shared_dict jump 20m;
lua_code_cache on;

重启nginx ,搞定.

验证安装成功

/usr/local/nginx/conf/nginx.conf 加入以下代码

代码语言:javascript
复制
location /test {
default_type 'text/plain';
content_by_lua 'ngx.say("test")';
}

访问ip/test 出现test 表示成功.