Discuz开启用户伪静态后,您指定的用户空间不存在【解决方法】
最近有很多朋友反应鼠标移动到列表页用户名上面会出现:“您指定的用户空间不存在” 点进去后不无法找到用户空间。导致有的会员关掉伪静态。关掉后收录会有所减少,对大型站来说应该算损失吧,正好本人知道怎么解决,本帖欢迎收藏,留着备用。
打开后:
正常解析 为: %D0%C4%C3%CE 。 但是地址栏中看到的是:%25D0%25C4%25C3%25CE
在用 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
ShopEx伪静态中中文字符搜索问题,修改规则如下:
RewriteRule ^(.*)$ index.php?$1
红色即为添加或修改部分。
3.0的规则如下:%1 注意中间有空格
RewriteRule ^space-(username|uid)-(.+)\.html$ home.php?mod=space&$1=$2&%1
修改好的.htaccess源文件提供下载: http://www.discuz.net/static/image/filetype/rar.gif 请去掉.rar (754 Bytes, 下载次数: 46)
修改好的.htaccess源文件提供下载: http://www.discuz.net/static/image/filetype/rar.gif 请去掉.rar (754 Bytes, 下载次数: 96)
注意要修改文件名字为: .htaccess
如果修改后问题还不能解决。
rewrite兼容性,切换 。设置为“ 是” 或者“否”。
另外此兄弟的修改源文件方法:http://www.discuz.net/thread-2362801-1-1.html
页:
[1]