甲骨文ARM架构安装宝塔Nginx防火墙及网站监控报表

515次阅读
10条评论

共计 1793 个字符,预计需要花费 5 分钟才能阅读完成。

前言

目前ARM架构机型在宝塔面板安装Nginx防火墙和网站监控报表,会出现冲突,不能正常使用;
出现的错误代码包括但不限于以下两种:
unknown directive "lua_shared_dict"
PANIC: unprotected error in call to Lua API (bad light userdata pointer)
其主要原因是因为宝塔面板在安装Nginx时,判断机器架构为ARM就会直接忽略编译和加载LuaJIT选项;
解决方法就是重新为Nginx编译加载LuaJIT选项,而ARM架构需要LuaJIT版本在2.1以上才能编译成功;
本方法在甲骨文ARM架构下测试,其它服务商的ARM架构应该同样适用,Nginx版本测试过1.181.20;
另外在宝塔面板首次安装Nginx时务必使用编译安装,极速安装可能会出现错误;

  • 测试时间:2021-11-06
  • 测试环境:Ubuntu 20.04
  • 宝塔版本:7.7.0
  • 插件版本:Nginx防火墙 8.9.2 / 网站监控报表 6.2
  • 温馨提醒:其它系统及版本未进行测试,请自行验证,请勿在生产环境下尝试;

创建脚本

/www/server/panel/install目录下分别新建名为nginx_prepare.shnginx_configure.pl两个文件;
并在两个文件中分别填写如下代码:
nginx_prepare.sh

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
 
wget -c -O LuaJIT-2.1.zip https://github.com/LuaJIT/LuaJIT/archive/refs/heads/v2.1.zip -T 10
unzip LuaJIT-2.1.zip
if [ -e LuaJIT-2.1 ]; then
    cd LuaJIT-2.1
    make linux
    make install
    export LUAJIT_LIB=/usr/local/lib
    export LUAJIT_INC=/usr/local/include/luajit-2.1/
    ln -sf /usr/local/lib/libluajit-5.1.so.2 /usr/local/lib64/libluajit-5.1.so.2
    if [ `grep -c /usr/local/lib /etc/ld.so.conf` -eq 0 ]; then
        echo "/usr/local/lib" >> /etc/ld.so.conf
    fi
    ldconfig
    cd ..
fi
rm -rf LuaJIT-2.1*

nginx_configure.pl

--add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module

然后将这两个文件设置权限为600,并将所有者设置为root

编译安装

SSH终端输入以下代码(清理脚本换行符,避免编译安装失败):

sed -i 's/\r//g' /www/server/panel/install/nginx_prepare.sh

SSH终端输入以下代码开始更新Nginx并按脚本加载LuaJIT选项:

cd /www/server/panel/install && bash install_soft.sh 0 update nginx 1.18

代码中的Nginx版本号需要改为你机器已经安装的Nginx版本1.18.1即为1.18
然后等待更新完成即可;

安装插件

注意:需要首先安装网站监控报表等待安装完成后再安装Nginx防火墙
原因是Nginx防火墙需要使用lua-cjson但在ARM下更新Nginx时直接编译lua-cjson会失败,具体原因没有深究;
而安装网站监控报表时会默认使用luarocks来安装lua-cjson这就直接解决了此问题;
当然你也可以先安装luarocks在使用luarocks install lua-cjson命令来安装lua-cjson
由于博主两个插件都要使用,所以就没单独测试了,需要的可以自行测试;

版权声明:本文为原创文章,版权归 SunPma 所有,转载请注明出处!本文链接:https://sunpma.com/1104.html

正文完
 
评论(10条评论)
验证码
狂笑一君 评论达人 LV.1
2022-03-20 16:43:40 回复

申请不到甲骨文,脸黑

 iPhone  Safari  中国广东省广州市联通
老张博客 评论达人 LV.1
2022-02-10 15:14:05 回复

老张博客域名已更换成izhang.org,麻烦抽出宝贵时间修改下友情链接!谢谢!

 Windows  Edge  中国江苏省宿迁市移动
叶开楗 评论达人 LV.1
2022-01-29 00:00:53 回复

我现在用的 宝塔开心版7.7.0 专业版
很多插件很实用,就是不能升级。

 Windows  Chrome  中国福建省厦门市电信
    碉堡 博主
    2022-01-29 00:01:45 回复

    @叶开楗 开心版感觉不是很放心。

     Windows  Chrome
      叶开楗 评论达人 LV.1
      2022-01-29 00:03:49 回复

      @碉堡 我刚呀关机,你回复我了。
      我还好,我现在一天三备份,阿里云,腾讯云,百度网盘,评论系统的暑假和博客数据都是天天备份。
      图片目前在 又拍 没放服务器 应该安全一点。
      我要关机了,哈哈 要不要看看 我新添加的 上一篇 下一篇功能 ,如果没出现要刷新一下 ,我刚把 cdn刷新了。

       Windows  Chrome  中国福建省厦门市电信
        碉堡 博主
        2022-01-29 00:09:15 回复

        @叶开楗 看到了,其实我基本上天天看你博客,就是没怎么评论就是咯

         Windows  Chrome
          叶开楗 评论达人 LV.1
          2022-01-29 09:16:34 回复

          @碉堡 哈哈 ,这样呀。
          感谢,Thanks♪(・ω・)ノ

           Windows  Chrome  美国纽约纽约Level3
loc 评论达人 LV.1
2022-01-20 21:09:51 回复

大佬,求扶贫源码,我也需要被扶贫。

 Windows  Chrome  中国辽宁省丹东市联通
    碉堡 博主
    2022-02-01 18:05:50 回复

    @loc 作者GitHub貌似是删库了

     Windows  Chrome