nginx-lua 的安装
时间:2020-01-03 11:56 来源:linux.it.net.cn 作者:IT
使用到的模块:lua-nginx-module
ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本
安装lua-nginx-module
1.下载安装LuaJIT 2.1(2.0或者2.1都是支持的,官方推荐2.1):
http://luajit.org/download.html
cd /usr/local/src
wget http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gz
tar zxf LuaJIT-2.1.0-beta2.tar.gz
cd LuaJIT-2.1.0-beta2
make PREFIX=/usr/local/luajit
make install PREFIX=/usr/local/luajit
2.下载ngx_devel_kit(NDK)模块 :
https://github.com/simpl/ngx_devel_kit/tags,不需要安装
cd /usr/local/src
wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz
tar -xzvf v0.2.19.tar.gz
3.下载最新的lua-nginx-module 模块 :
https://github.com/openresty/lua-nginx-module/tags,不需要安装
cd /usr/local/src
wget https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz
tar -xzvf v0.10.2.tar.gz
4.nginx -V查看已经编译的配置
nginx -V
5.设置环境变量
export LUAJIT_LIB=/usr/local/luajit/lib && export LUAJIT_INC=/usr/local/luajit/include/luajit-2.1
6.在原有nginx上添加模块:
./configure --prefix=/usr/local/nginx --with-pcre --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-ipv6 --with-http_realip_module --with-pcre-jit --with-ld-opt='-ljemalloc' --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --add-module=/usr/local/src/lua-nginx-module-0.10.2/ --add-module=/usr/local/src/nginx-module-vts/
7.编译
make -j2
8.替换nginx二进制文件
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp -r ./objs/nginx /usr/local/nginx/sbin/
/usr/local/nginx/sbin/nginx -V
...
...
configure arguments: --prefix=/usr/local/nginx --with-pcre --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-ipv6 --with-http_realip_module --with-pcre-jit --with-ld-opt=-ljemalloc --with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/usr/local/src/lua-nginx-module-0.10.2/ --add-module=/usr/local/src/nginx-module-vts/
9.重启nginx生效
pkill -9 nginx
/usr/local/nginx/sbin/nginx
10.配置nginx.conf 实验lua模块是否安装成功
...
location /hello_lua {
default_type 'text/plain';
content_by_lua 'ngx.say("hello, lua")';
}
...
/usr/local/nginx/sbin/nginx -s reload
11.访问ip/hello_lua
(责任编辑:IT)
使用到的模块:lua-nginx-module ngx_lua_module 是一个nginx http模块,它把 lua 解析器内嵌到 nginx,用来解析并执行lua 语言编写的网页后台脚本 安装lua-nginx-module 1.下载安装LuaJIT 2.1(2.0或者2.1都是支持的,官方推荐2.1): http://luajit.org/download.html cd /usr/local/src wget http://luajit.org/download/LuaJIT-2.1.0-beta2.tar.gz tar zxf LuaJIT-2.1.0-beta2.tar.gz cd LuaJIT-2.1.0-beta2 make PREFIX=/usr/local/luajit make install PREFIX=/usr/local/luajit 2.下载ngx_devel_kit(NDK)模块 : https://github.com/simpl/ngx_devel_kit/tags,不需要安装 cd /usr/local/src wget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gz tar -xzvf v0.2.19.tar.gz 3.下载最新的lua-nginx-module 模块 : https://github.com/openresty/lua-nginx-module/tags,不需要安装 cd /usr/local/src wget https://github.com/openresty/lua-nginx-module/archive/v0.10.2.tar.gz tar -xzvf v0.10.2.tar.gz 4.nginx -V查看已经编译的配置 nginx -V 5.设置环境变量 export LUAJIT_LIB=/usr/local/luajit/lib && export LUAJIT_INC=/usr/local/luajit/include/luajit-2.1 6.在原有nginx上添加模块: ./configure --prefix=/usr/local/nginx --with-pcre --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-ipv6 --with-http_realip_module --with-pcre-jit --with-ld-opt='-ljemalloc' --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --add-module=/usr/local/src/lua-nginx-module-0.10.2/ --add-module=/usr/local/src/nginx-module-vts/ 7.编译 make -j2 8.替换nginx二进制文件 cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak cp -r ./objs/nginx /usr/local/nginx/sbin/ /usr/local/nginx/sbin/nginx -V ... ... configure arguments: --prefix=/usr/local/nginx --with-pcre --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-ipv6 --with-http_realip_module --with-pcre-jit --with-ld-opt=-ljemalloc --with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/usr/local/src/lua-nginx-module-0.10.2/ --add-module=/usr/local/src/nginx-module-vts/ 9.重启nginx生效 pkill -9 nginx /usr/local/nginx/sbin/nginx 10.配置nginx.conf 实验lua模块是否安装成功 ... location /hello_lua { default_type 'text/plain'; content_by_lua 'ngx.say("hello, lua")'; } ... /usr/local/nginx/sbin/nginx -s reload 11.访问ip/hello_lua (责任编辑:IT) |