lua-nginx-module安装
安装过程
# 编译安装 luajit
tar zxvf LuaJIT-2.0.4.tar.gz
cd LuaJIT-2.0.4/
make install PREFIX=/usr/local/luajit
# 编译安装 Nginx
tar zxvf nginx-1.10.1.tar.gz
cd nginx-1.10.1/
# tell nginx's build system where to find LuaJIT 2.0:
export LUAJIT_LIB=/usr/local/luajit/lib
export LUAJIT_INC=/usr/local/luajit/include/luajit-2.0
./configure --prefix=/usr/local/nginx --with-ld-opt="-Wl,-rpath,/usr/local/luajit/lib" --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_gzip_static_module --with-debug --add-module=/home/junglone/nginx_lua_tools/ngx_devel_kit-0.3.0 --add-module=/home/junglone/nginx_lua_tools/lua-nginx-module-0.10.7 --add-module=/home/junglone/nginx_lua_tools/echo-nginx-module-0.60
# --with-debug
# "调试日志"默认是禁用的,因为它会引入比较大的运行时开销,让 Nginx 服务器显著变慢。
# 启用 --with-debug 选项重新构建好调试版的 Nginx 之后,还需要同时在配置文件中通过标准的 error_log 配置指令为错误日志使用 debug 日志级别(这同时也是最低的日志级别):
# error_log logs/error.log debug;
# --add-module
# 加入模块。以上编译命令中加入了 ngx_devel_kit、lua-nginx-module、echo-nginx-module 模块,这些模块需要单独下载, 可以去 github 下载
# 简明过滤日志处理:
# grep -E 'http (output filter|script (set|value))' logs/error.log
# you can change the parallism number 2 below to fit the number of spare CPU cores in your
# machine.
make -j2
make install
- ubuntu 16.04 上安装 Nginx 遇到的缺少 pcre、openssl 依赖的问题参见 Ubuntu 16.04 LTS 下Nginx的编译安装与启动
- 测试安装结果
# 注意文件夹权限问题
sudo /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
luajit 与 lua-cjson 的恩怨情仇
- lua 环境的 lua-cjson 下载安装
wget https://www.kyne.com.au/~mark/software/download/lua-cjson-2.1.0.tar.gz cd lua-cjson-2.1.0/ make make install
luajit 环境的 lua-cjson 安装
# luajit 用于 Nginx 环境的 lua 开发时,使用 lua-cjson 需要把 lua-cjson 编译进 luajit。 # 由于 lua-cjson 默认的 Makefile 文件编译相关的默认目录指定的是系统 lua,因此需要手动修改编译目录来适配 luajit。 # 修改的内容如下: # PREFIX = /usr/local PREFIX = /usr/local/luajit # LUA_INCLUDE_DIR = $(PREFIX)/include LUA_INCLUDE_DIR = $(PREFIX)/include/luajit-2.0 # LUA_MODULE_DIR = $(PREFIX)/share/lua/$(LUA_VERSION) LUA_MODULE_DIR = $(PREFIX)/share/luajit-2.0.4 修改完成后执行编译安装 make sudo make install
注意事项
操作「2」重新编译安装 Nginx,重启 Nginx 服务后可用。
- lua 环境的 lua-cjson 下载安装