伪静态URL中文乱码问题解决方法

admin3年前服务器82

在 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)-(.+)\$ home.php?mod=space&$1=$2&%1 [NU]

 

2、ShopEx伪静态中中文字符搜索问题,修改规则如下:

 

复制代码 代码如下:

RewriteRule ^(.*)$ index.php?$1 [QSA,NU,PT,L]

 

蓝色部分即为修改部分。

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

百度云虚拟主机BCH怎么设置伪静态? 怎么去掉程序后面的index.php?

百度云虚拟主机BCH怎么设置伪静态? 怎么去掉程序后面的index.php?连接ftp,打开webroot目录新建一个bcloud_nginx_user.conf文件(由于bch是不允许修改基础配置文...

Apache,IIS下Discuz x1.5伪静态设置方法

1.如是Apache服务器,操作如下:建立.htaccess文件,在该文件里面写入如下伪静态规则:复制代码 代码如下:# 将 RewriteEngine 模式打开RewriteEngine On# 修...

宝塔面板如何设置伪静态规则?

宝塔面板后台集成了站点伪静态规则设置选项,无需更改Linux服务器conf文件配置即可自定义站点伪静态规则,真的很方便,另外宝塔为市面上常见的程序提供了自带的伪静态规则,只需要鼠标点选即可。新手站长网...

虚拟主机设置伪静态的好处

虚拟主机伪静态是指在虚拟主机环境下,通过对网站的URL进行处理,将动态页面的网址通过重写规则变成与静态页面类似的形式。而不是直接展示带有参数的动态页面地址。这样做有以下几个好处:好处一、优化搜索引擎显...

LNMP添加、删除虚拟主机及伪静态使用教程

本文主要介绍lnmp一键安装包添加虚拟主机、删除虚拟主机及如何使用伪静态。一、添加虚拟主机通俗点就是在vps/服务商上添加一个网站(域名)。需要执行如下命令:/root/vhost.sh 执行后会出现...

phpstudy v8.1 Apache伪静态配置

apache伪静态配置,需要网站根目录下有 .htaccess 文件,没有则需要自己创建一个,phpStudy V8能够自动生成这样一个文件,免去了繁琐的配置过程。以下为Apache伪静态的配置具体教...