文章中使用的服务器环境为 CentOS 7.6 阿里云的镜像, nginx 为 yum 安装的1.20.1版本, luajit 这个是lua 的编译器 版本为 2.0.2, lua-nginx-module 版本为0.10.15
成功打印hello word
nginx + lua 可以直接把nginx的可扩展性拉上了一个不敢想象的层次,你可以使用各种lua的模块来实现一些复杂的功能,使nginx成为一个可以都独当一面的存在。喜欢折腾而且nginx已经运行一段时间的可以使用以上的方法,如果初次接触nginx就有这方面的需求的话建议直接使用 OpenResty® - 中文官方站 国人大佬开发的一个基于 nginx + lua 的web平台,可以省去折腾的麻烦。
在原生的nginx,他不可以动态加载模块,所以当你安装第三方模块的时候需要覆盖nginx文件.nginx第三方模块安装方法如下:/configure --prefix=/你的安装目录 --add-module=/第三方模块目录
以安装pagespeed模块实例
在未安装nginx的情况下安装nginx第三方模块
# ./configure --prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--with-http_ssl_module --with-http_realip_module \
--with-http_image_filter_module \
--add-module=../ngx_pagespeed-master --add-module=/第三方模块目录
# make
# make isntall
# /usr/local/nginx-1.4.1/sbin/nginx
在已安装nginx情况下安装nginx模块
# ./configure --prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--with-http_ssl_module --with-http_realip_module \
--with-http_image_filter_module \
--add-module=../ngx_pagespeed-master
# make
# /usr/local/nginx-1.4.1/sbin/nginx -s stop
# cp objs/nginx /usr/local/nginx/sbin/nginx
# /usr/local/nginx-1.4.1/sbin/nginx
相比之下仅仅多了一步覆盖nginx文件.
总结,安装nginx安装第三方模块实际上是使用–add-module重新安装一次nginx,不要make install而是直接把编译目录下objs/nginx文件直接覆盖老的nginx文件.如果你需要安装多个nginx第三方模块,你只需要多指定几个相应的–add-module即可.
对于nginx官网提供的windows版本的nginx仅仅是一个已经编译好的nginx的zip包而已,因此对于这个下载的nginx版本,是没有办法对nginx添加模块的。可以看一下差,nginx是否支持windows下的编译(由于很久没有使用windows了,所以么有在windows下编译过,题主可以试验一下)。如果可以支持windows平台的编译,则添加模块就比较简单,和linux平台类似,编译时,增加--add_module=xxx就可以了。如果nginx不支持windows平台的编译,则就没有办法在windows平台下给nginx增加模块了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)