概述
在 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 参数即可。
以下看两个伪静态含有中文字串的规则例子:
1、Discuz伪静态个人空间规则修改:
复制代码 代码如下:
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$1=$2&%1 [NU]
2、ShopEx伪静态中中文字符搜索问题,修改规则如下:
复制代码 代码如下:
RewriteRule ^(.*)$ index.php?$1 [QSA,NU,PT,L]
蓝色部分即为修改部分。
最后
以上就是平常钢笔为你收集整理的伪静态URL中文乱码问题解决方法的全部内容,希望文章能够帮你解决伪静态URL中文乱码问题解决方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复