云锁界面中如果没有自编译Nginx的话,上图自编译那里是灰色不可用的:则web防护不生效,但是系统防护是生效的。

也就意味着大部分功能是无法使用的,比如防CC,防SQL注入,防盗链,防端口扫描…等功能无法生效。


———————-
PS:Nginx自编译的教程有很多,这里是微凉写的参考教程:宝塔+云锁nginx自编译web防护
———————-

和大半年来的几次一样,虽然按上边教程自编译成功了,但是宝塔的Nginx里生成了大量错误日志,如果不能解决,用不多久服务器就扛不住了,错误日志都是下边这样的:

2022/03/29 13:28:50 [alert] 15589#0: worker process 17526 exited on signal 6
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
2022/03/29 13:29:19 [alert] 15589#0: worker process 17619 exited on signal 6
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
2022/03/29 13:29:22 [alert] 15589#0: worker process 17628 exited on signal 6
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
2022/03/29 13:30:08 [alert] 15589#0: worker process 17614 exited on signal 6
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
2022/03/29 13:30:12 [alert] 15589#0: worker process 17580 exited on signal 6

在宝塔面板中找到服务器agent端 /usr/local/yunsuo_agent/FilterKernel.xml (vi修改)

注释掉一行代码,然后替换回去即可:

原始代码:

<?xml version='1.0' encoding='utf-8'?>
<Framework product_type="yunsuo" retcode="404">
<!--PlugIn dllpath="libs/libbypass.so" RunOn_Filter=".*" RunOn_Product=".*"/-->
<!--以下为解决宝塔环境下云锁Nginx模块自编译错误解决:[alert] 15589#0: worker process 17580 exited on signal 6 -->
<!--<PlugIn dllpath="libs/libperformanceMonitor.so" RunOn_Filter=".*" RunOn_Product=".*"/>-->
<PlugIn dllpath="libs/libpeer.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libipFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libmethodFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libhttpkeyFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libccFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libmultidownloadFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libbackgroundFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libbrowseprotectFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libabnormalfileFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libantistealinglink.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libsqlProtection.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libfiledownloadProtection.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libresponsecontentFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libsensitiveFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
</Framework>

修改后代码:

<?xml version='1.0' encoding='utf-8'?>
<Framework product_type="yunsuo" retcode="404">
<!--PlugIn dllpath="libs/libbypass.so" RunOn_Filter=".*" RunOn_Product=".*"/-->
<!--以下为解决宝塔环境下云锁Nginx模块自编译错误解决:[alert] 15589#0: worker process 17580 exited on signal 6 -->
<!--<PlugIn dllpath="libs/libperformanceMonitor.so" RunOn_Filter=".*" RunOn_Product=".*"/>-->
<PlugIn dllpath="libs/libpeer.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libipFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libmethodFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libhttpkeyFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libccFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libmultidownloadFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libbackgroundFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libbrowseprotectFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libabnormalfileFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libantistealinglink.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libsqlProtection.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libfiledownloadProtection.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libresponsecontentFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
<PlugIn dllpath="libs/libsensitiveFilter.so" RunOn_Filter=".*" RunOn_Product=".*"/>
</Framework>

最后重启下Nginx和Php,终于没有新的错误日志生成了!
————————————–
PS:如果正常编译后启动Nginx出现如下错误:

Nginx配置规则错误:

nginx: the configuration file /www/server/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /www/server/nginx/conf/nginx.conf test failed

原因应该是之前有安装过宝塔的付费插件过期未付费导致的,重新续费或卸载后Nginx即可正常启动。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。