网络编程 
首页 > 网络编程 > 浏览文章

给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug

(编辑:jimmy 日期: 2024/10/11 浏览:3 次 )
这个问题是mod_encoding已经先一步处理了url ,而PHP又解了一次
例如
x.php?s=%252B%2F%2B%2F
那么$_GET['s']得到的是
+/ /
urlencode("+") = %2B
urlencode("%2B") = %252B
所以,这个url被decode了两次
第一次是
urldecode( "%252B%2F%2B%2F")    = %2B/+/
urldecode( "%2B/+/")            = +/ / 
 解决办法
修改httpd.conf 将
<IfModule mod_encoding.c>
    EncodingEngine    on  
这一段配置移到需要的vitualHost里去,这个不能和php脚本并存。
上一篇:安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
下一篇:Linux下ZendOptimizer的安装与配置方法