首页 > 代码库 > Nginx与Lua利用fpm打成rpm包
Nginx与Lua利用fpm打成rpm包
1.下载相关软件
需要软件有:Nginx,LuaJIT,ngx_devel_kit,ngx_lua等安装文件
安装Lua或者LuaJIT都是可以的,但是出于效率的考虑,推荐安装LuaJIT
shell> wget http://luajit.org/download/LuaJIT-<VERSION>.tar.gzshell> tar zxvf LuaJIT-<VERSION>.tar.gzshell> cd LuaJIT-<VERSION>shell> makeshell> make install
因为安装在缺省路径,所以LuaJIT对应的lib,include均在/usr/local目录里。
shell> export LUAJIT_LIB=/usr/local/libshell> export LUAJIT_INC=/usr/local/include/luajit-<VERSION>
注意:lua模块支持的nginx版本
Nginx Compatibility
The latest version of this module is compatible with the following versions of Nginx:
- 1.11.x (last tested: 1.11.2)
- 1.10.x
- 1.9.x (last tested: 1.9.15)
- 1.8.x
- 1.7.x (last tested: 1.7.10)
- 1.6.x
Nginx cores older than 1.6.0 (exclusive) are not supported
nginx编译参数:
./configure --prefix=/usr/local/nginx-lua-1.11.7 --with-pcre --with-http_stub_status_module --with-http_gzip_static_module --add-module=/opt/lua-nginx-module-0.10.7 --add-module=/opt/ngx_devel_kit-0.3.0 --with-ld-opt="-Wl,-rpath,/usr/local/lib"
2.编译安装
make -j2 && make install
3.查看是否缺失模块
ldd nginx
试着启动一下Nginx看看,如果你运气不好的话,可能会遇到如下错误:
cannot open shared object file: No such file or directory
这是神马情况?可以用ldd命令来看看:
shell> ldd /path/to/nginx libluajit-<VERSION>.so => not found
此类问题通常使用ldconfig命令就能解决:
shell> echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf
shell> ldconfig
再试着启动Nginx看看,应该就OK了。
4.fpm打包
fpm打包教程网上有很多,这里就不重复了
github上有现成的开源项目
http://openresty.org/cn/
参考链接:
https://github.com/openresty/lua-nginx-module
http://huoding.com/2012/08/31/156
http://openresty.org/cn/
Nginx与Lua利用fpm打成rpm包
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。