WordPress中文链接在某些服务器上面会出现404的情况,点击中文tag链接出现404页面等,大部分是在windows系统的服务器(所以我们非常不推荐使用windows服务器,坑比较多)。解决这个问题我们建议在固定链接的设置上可以不要选择文章名字的方式,可以选择使用ID,另外页面、分类、标签手动修改别名为英文字母数字等。比较麻烦的就是标签,由于标签的数量会比较多,而且不定期会增加,手动修改会比较麻烦,这里推荐几个插件,可以解决这个问题:Auto Tag Slug、IIS Chinese Tag Permalink。
以上为使用插件的方式,但是由于这两个插件都是好多年都未更新了,所以这里再给出一种修改代码的方式(修改代码会被新版本覆盖,请每次更新留意这个问题)。进入wp-includes目录,找到class-wp.php文件,在第178行和182行找到如下代码:
将178行修改为:
$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? mb_convert_encoding($_SERVER['PATH_INFO'],'utf-8', 'GBK') : '';
将182行修改为:
list( $req_uri ) = explode( '?', mb_convert_encoding($_SERVER['REQUEST_URI'], 'utf-8','GBK') );
注意修改的时候使用专业的代码编辑工具,例如:Dreamweaver、sublime text、notepad++等。WordPress版本不同,所要修改的代码位置可能也有所不同。
上一篇
已是最后文章