quanshiyinian 发表于 2014-11-18 18:59:39

开启伪静态后,欢迎新会员中文用户无法访问的解决方法

一直都有同学出现开启了伪静态,导致欢迎新会员后面是中文名字的用户的个人空间不能访问的问题,这个主要是因为手机缓存问题导致两次处理的url导致,如: 心梦本应转换后的结果是%D0%C4%C3%CE,但是被处理为: %25D0%25C4%25C3%25CE,下面我们就分享下开启伪静态后,欢迎新会员中文用户无法访问的解决方法


更改方法:打开source\function\function_core.php,查找到 output函数如下代码:
if(defined('CACHE_FILE') && CACHE_FILE && !defined('CACHE_FORBIDDEN'))更改为:

if(defined('CACHE_FILE') && CACHE_FILE && !defined('CACHE_FORBIDDEN') && !$_G['mobile']) 然后上传覆盖,更新下CSS缓存看看是否正常了。

如果使用上面的方法还无法解决,可以尝试使用选择rewrite兼容性,切换 。设置为“ 是” 或者“否”查看是否解决
如果,还是出现,用户空间不存在

打开:function_core.php,查找到:


$_G['setting']['rewritecompatible'] && $username = rawurlencode($username)更为:


$_G['setting']['rewritecompatible'] && $username = $usernamerawurlencode函数的作用:除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,这也就是%被二次处理的原因,将rawurlencode函数去掉在试。
如果是你的伪静态配置方法不正确导致,可以查看下Discuz! X2.5论坛不同环境配置伪静态的方法,


页: [1]
查看完整版本: 开启伪静态后,欢迎新会员中文用户无法访问的解决方法