Dsicuz论坛在会员未登录状态或者游客使用搜索功能时提示Discuz! System Error错误,错误提示如下:
Discuz! System Error
•您当前的访问请求当中含有非法字符,已经被系统拒绝
PHP Debug
•[Line: 0022]search.php(discuz_application->init)
•[Line: 0071]source/class/discuz/discuz_application.php(discuz_application->_init_misc)
•[Line: 0552]source/class/discuz/discuz_application.php(discuz_application->_xss_check)
•[Line: 0355]source/class/discuz/discuz_application.php(system_error)
•[Line: 0023]source/function/function_core.php(discuz_error::system_error)
•[Line: 0024]source/class/discuz/discuz_error.php(discuz_error::debug_backtrace)
测试Discuz! X3.1/Discuz! X3.2解决办法如下:
登陆FTP查找 source/class/discuz/discuz_application.php 文件,查找如下代码:
[php]if (isset($_GET[‘GLOBALS’]) ||isset($_POST[‘GLOBALS’]) || isset($_COOKIE[‘GLOBALS’]) || isset($_FILES[‘GLOBALS’])) {
system_error(‘request_tainting’);
}
[/php]
然后注释掉这段代码即可,注释代码方法有2种,如下:
[php]/*if (isset($_GET[‘GLOBALS’]) ||isset($_POST[‘GLOBALS’]) || isset($_COOKIE[‘GLOBALS’]) || isset($_FILES[‘GLOBALS’])) {
system_error(‘request_tainting’);
}*/
[/php]
或者:
[php]//if (isset($_GET[‘GLOBALS’]) ||isset($_POST[‘GLOBALS’]) || isset($_COOKIE[‘GLOBALS’]) || isset($_FILES[‘GLOBALS’])) {
//system_error(‘request_tainting’);
//}
[/php]
然后保存覆盖原文件(修改代码前注意备份该文件),登陆论坛后台-工具-刷新缓存即可。
—————————————
此方案如未解决请参考:http://www.lajiz.cn/2687.html
—————————————
本文由垃圾站博客编辑整理,转载请保留原文链接:http://www.lajiz.cn/2676.html