Discuz搜索报错

Discuz! System Error

Time: 2022-02-16 04:45:55 +0000 IP: 113.72.211.179 BackTraceID: 066b5104fb973d1ded8a4b2809ff27f4

您当前的访问请求当中含有非法字符,已经被系统拒绝

PHP Debug

Line: 0022\]search.php(discuz_application-\>init) \[Line: 0072\]source/class/discuz/discuz_application.php(discuz_application-\>_init_misc) \[Line: 0600\]source/class/discuz/discuz_application.php(discuz_application-\>_xss_check) \[Line: 0373\]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) ## **解决方法** ### **source/class/discuz/discuz_application.php** ##### 步骤 1:定位并替换 `_xss_check()` 函数 搜索下面的代码 static $check = array('"', '>', '<', '\'', '(', ')', 'CONTENT-TRANSFER-ENCODING'); **在代码下面新增(直接复制以下代码)** // 新增:放行 search.php 的搜索请求(核心修复) if(CURSCRIPT === 'search' || basename($_SERVER['SCRIPT_NAME']) === 'search.php') { // 仅拦截明显的XSS攻击字符,放行正常搜索关键词 $danger_pattern = '/、<` 等的普通搜索关键词。 2. **保留原有安全** :除了 `search.php` 外,其他页面(如登录、发帖、后台)仍使用原有的严格检查逻辑,不会降低论坛整体安全性。 3. **兼容性**:适配 Discuz! X3.5 的 CURSCRIPT 常量和 SCRIPT_NAME 两种判断方式,避免服务器环境差异导致失效。

相关推荐
w***29852 小时前
Knife4j文档请求异常(基于SpringBoot3,查找原因并解决)
java·服务器·数据库
郝学胜-神的一滴2 小时前
深入理解TCP连接的优雅关闭:半关闭状态与四次挥手的艺术
linux·服务器·开发语言·网络·tcp/ip·程序人生
hoududubaba7 小时前
ORAN压缩之块浮点压缩
网络·网络协议
砚边数影10 小时前
运营商网管系统重构:如何解决海量投诉数据下的“查询延迟”与“写入瓶颈”?
网络·数据库·时序数据库·kingbase·kingbasees·数据库平替用金仓·金仓数据库
CCPC不拿奖不改名10 小时前
虚拟机基础:在VMware WorkStation上安装Linux为容器化部署打基础
linux·运维·服务器·人工智能·milvus·知识库搭建·容器化部署
山峰哥10 小时前
数据库调优实战:索引策略与查询优化案例解析
服务器·数据库·sql·性能优化·编辑器
李菠萝的多样空间11 小时前
【网络】AC控制器上AP换新并上线命令笔记##2
网络·锐捷
安科士andxe11 小时前
安科士 SFP-10G-T 万兆电口光模块核心技术解析,打造中短距高速网络新标杆
网络
tryxr12 小时前
如何基于UDP实现可靠传输
网络·网络协议·udp·tcp