ShopEx网店系统、Discuz论坛等的伪静态规则都存在中文编码问题。
在用 ISAPI_Rewrite 1.3 版的时,只要对URL进行 UrlEncode 处理,就可以正常接收到中文。
但是如果换为 3.1版以后 GB2312 的接收页面就是乱码了。
换用了 ISAPI_Rewrite 3.x 发现编码后的字符会变成乱码,如果直接使用中文不编码,则会被格式化为GBK字符串。
在RewriteRule 规则中添加 NU 即可恢复正常。
关于ISAPI_Rewrite中文变乱码解决方法如下:
1、在传输URL时,将中文进行urlencode,这样是没错的。
2、如果是ISAPI_Rewrite 3.x 只需添加 NU 参数即可。
参考代码:
Discuz伪静态中个人空间规则修改:
RewriteRule ^space-(username|uid)-(.+).html$ home.php?mod=space&$1=$2&%1
[QSA,NU,PT,L]
ShopEx伪静态中中文字符搜索问题,修改规则如下:
RewriteRule ^(.*)$ index.php?$1
[QSA,NU,PT,L]
红色即为添加或修改部分。
来源:
http://www.7aidc.com/help/helpdtl.asp?nid=108