护卫神·防入侵系统-网站防护采用模块化设计,兼容当前主流的各类WebServer(中间件)。
适配:IIS、Apache、Nginx、OpenResty、Tengine
特别注意的是Nginx、OpenResty、Tengine需要开启兼容模块--with-compat
如提示如下图1,则说明当前环境并没有启用--with-compat
图1
可通过以下方法处理,在处理前建议你备份好网站配置文件及Nginx、OpenResty、Tengine主配置文件。
1、使用主机大师
网站环境使用护卫神·主机大师:默认开启--with-compat,无须再开启。
2、使用宝塔面板(V8.0.5或以上版本,如是旧版本,请查看方法3)
2.1、选择在业务不繁忙时,登录宝塔面板,找到“软件商店”-”运行环境“-NGINX对应的版本-”卸载“(如是新安装请忽略此步,直接查看2.2)
如下图2
图2
注:如果Nginx主配置文件中有特别的设置,请一定做好备份。
2.2、卸载完成后,重新安装Nginx,选择相应版本,同时点击“编译安装”,如下图3
图3
选定“添加自定义模块”,如图4
图4
接下来就按要求填写信息
模块名称:compat(可随意填写)
模块描述:compat(可随意填写)
模块参数:--with-compat (必须填此名称)
前置脚本:无须填写
以上参数填写完后点击右下角的”提交“,如下图5
图5
勾选添加的模块,“提交并安装”,耐心等待安装完成即可,如下图6
图6
3、使用宝塔面板(旧版本)
3.1、选择在业务不繁忙时,登录宝塔面板,找到“软件商店”-“运行环境”-Nginx对应的版本-“卸载”,如下图7
图7
注:如果Nginx主配置文件中有特别的设置,请一定做好备份。
2.2、重新安装Nginx,并选择相应版本,如下图8
图8
安装方式:编译安装
添加自定义模块,如下图9
图9
接下来就按要求填写信息
模块名称:compat(可随意填写)
模块描述:compat(可随意填写)
模块参数:--with-compat (必须填此名称)
前置脚本:无须填写
以上参数填写完后点击右下角的”提交“,如下图10
图10
勾选模块名称,”提交“后,等待安装完毕即可。如下图11
图11
4、使用其他方式
网站环境使用其它方式安装,如有面板管理,可联系技术员处理,非面板管理可参考以下脚本编译方法处理。
此方法只是重新编译nginx可的可执行文件及附带的so文件,因此只需要使用新编译好的nginx可执行文件及so文件替换旧的即可,替换后需要重启nginx服务。
如有疑问可联系护卫神官方技术帮你处理。
!#/usr/bin/env bash # 创建临时目录 mkdir -p /tmp/nginx;TEMP=/tmp/nginx;cd ${TEMP} # 获取nginx主进程的PID NGINXPID=$(ps aux | grep 'nginx' | grep 'master'|awk '{print $2}') # 获取nginx可执行文件的位置(绝对路径) NGINXPATH=$(readlink /proc/${NGINXPID}/exe) # 获取nginx 的版本号 NGINXVER=$(${NGINXPATH} -v 2>&1 | awk -F'/' '{print $NF}') # 获取nginx的编译参数 NGINXARG=$(${NGINXPATH} -V 2>&1 | grep 'prefix' | awk -F':' '{print $2}') # 下载对应版本的源码、解压并进入源码目录 wget https://nginx.org/download/nginx-${NGINXVER}.tar.gz && tar -xf nginx-${NGINXVER}.tar.gz && cd nginx-${NGINXVER} ./configure ${NGINXARG} --with-compat && make # 备份nginx可执行文件 if ! -f ./objs/nginx;then echo 'Compile Error' exit 2 else cp -f ./objs/nginx ${NGINXPATH} fi #if ${NGINXPATH} -s reload;then kill -HUP ${NGINXPID} echo 'Installing Nginx Finished' if if ${NGINXPATH} -V 2>&1 | grep 'with-compat' | awk -F':' '{print $NF}' | awk '{print $NF}' echo 'With-compat Enabled' fi
如您在操作时遇到困难可联系护卫神在线客服协助你解决。