前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题

LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题

原创
作者头像
Power
发布2023-05-31 09:29:21
5110
发布2023-05-31 09:29:21
举报
文章被收录于专栏:源码库源码库

最近使用的 LNMP 一键安装包 1.9 正式版因为 Nginx 更新至最新主线版 1.23.3 了,造成在开启 Nginx_Lua 模块支持的时候出现了编译错误,问了后获知“这是因为 nginx 1.23.3 版本的新变化特性导致的”,主要是 1.23.0 版的“Change in internal API: now header lines are represented as linked lists.”更新造成的。

LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题
LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题

解决办法是给 Nginx 打上一个 ngx_lua_headers.patch 的补丁后再编译即可(:本文结尾处有下载分享哦!)。

这个 patch 单独运行后再安装是不起作用的,需要在 LNMP 一键安装包脚本里添加上:

patch放到 LNMP 一键安装包的 src/patch 目录下

编辑 LNMP 一键安装包里 include/nginx.sh 文件,

查找 tar zxf ${LuaNginxModule}.tar.gz 在下面添加一行

代码语言:javascript
复制
patch -p0 < ${cur_dir}/src/patch/ngx_lua_headers.patch

保存后,再次 ./upgrade.sh nginx 更新 Nginx 到 1.23.3 主线板进行编译即可顺利完成了。

代码语言:javascript
复制
nginx version: nginx/1.23.3
built by gcc 10.2.1 20200825 (Alibaba 10.2.1-3 2.32) (GCC) 
built with OpenSSL 1.1.1o  3 May 2022
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-openssl=/root/lnmp1.9/src/openssl-1.1.1o --with-openssl-opt='enable-weak-ssl-ciphers' --with-ld-opt=-Wl,-rpath,/usr/local/luajit/lib --add-module=/root/lnmp1.9/src/lua-nginx-module-0.10.14 --add-module=/root/lnmp1.9/src/ngx_devel_kit-0.3.1 --with-pcre=/root/lnmp1.9/src/pcre-8.45 --with-pcre-jit --with-http_realip_module --add-module=/root/lnmp1.9/src/ngx_brotli

可以看到 Nginx 1.23.3 版已经支持 Nginx_Lua 了。

LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题
LNMP 一键安装包环境下 Nginx 1.23.3 开启 Nginx_Lua 编译报错问题

主要是最近一个客户的服务器上有个项目需要用到 Nginx_Lua 模块支持,虽然不是很迫切,但能尽早解决当然是更好了,本来是打算降级 Nginx 到 1.22 来解决的,没有想到很快回复了我的求助,就赶紧试了一下,没想到编译完美成功了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档