wordpress为什么会出现404?
经常有wordpress用户打开404页面的情况。造成这种情况的原因主要有两个:伪静态设置的问题;服务器不支持中文链接。伪静态的问题可以通过在wordpress后台设置-固定链接来设置。如果还是不行,可以联系服务器管理员。
WordPress中文链接在一些服务器上也会出现404,大部分都是在windows服务器上(所以不建议用windows服务器,坑很多)。
针对这个问题,我们建议在固定链接的设置中,可以选择使用ID代替文章名称,并手动将页面、类别、标签的别名改为英文字母数字等。
比较麻烦的是标签。因为标签的数量会比较多,会时不时的增加,手工修改会比较麻烦。下面推荐几个解决这个问题的插件:Auto Tag Slug,IIS中文标签Permalink。
以上是插件的使用方法,但是由于这两个插件已经很多年没有更新了,这里提供另一种修改代码的方法(修改后的代码会被新版本覆盖,每次更新请注意这个问题)。转到wp-includes目录,找到class-wp.php文件,并在第178和182行找到以下代码:
将第178行改为:
$ pathinfo = isset($ _ SERVER[& # 039;PATH _ INFO & # 039] ) ?MB _ convert _ encoding($ _ SERVER[& # 039;PATH _ INFO & # 039],'ut F-8 & # 039;, 'GBK & # 039;) : '';将第182行改为:
list($ req _ uri)= explode(& # 039;?',MB _ convert _ encoding($ _ SERVER[& # 039;请求_ URI & # 039;], 'ut F-8 & # 039;,'GBK & # 039;) );
注意使用专业的代码编辑工具,如Dreamweaver、sublime text、notepad++等。
更多WordPress技术文章,请访问WordPress教程专栏!
评论前必须登录!
注册