wordpress中文标签无法访问的解决方法

 爱好  2年前 (2014-05-29)  7,601  8

当博客从华夏名网转移到阿里云之后,发现了不少问题,其中一个就是wordpress中文标签无法访问,出现404错误页。

原因:在Windows主机的IIS服务器下WordPress不支持中文编码法访问,由于原来在华夏名网的服务器是linux的,所以没有出现这种问题

解决方法:如果要想正常打开中文标签,就需要让WordPress能支持中文的编码,也就是UTF-8和GBK编码。

下面分享下我的解决过程;

  • 方法一:这也是百度最多的解决办法之一(但是对我没有作用,我根本找不到这两句代码)
打开wp-include中的class-wo.php文件,找到第1577行和第158行代码进行修改。
第153行原代码: $pathinfo = $_SERVER['PATH_INFO']; 替换为: $pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");
第158行原代码: $req_uri = $_SERVER['REQUEST_URI']; 替换为: $req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");
修改好了之后,保存,然后将保存后的classes.php文件上传到服务器并覆盖原文件即可。
首先打开Wordpress站点下wp-includes目录里的class-wp.php文件。操作之前复制备份一个是好的习惯。
搜索$_SERVER['REQUEST_URI']或直接定位157行。用“//”注释掉

//list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] );注释掉这一行,添加下面两行代码
$Temp_REQUEST_URI= mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");
list( $req_uri ) = explode( '?', $Temp_REQUEST_URI );
搜索$_SERVER['PATH_INFO']或直接定位到153行。用“//”注释掉此行:

//$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : '';注释掉这一行,添加下面两行代码
$Temp_PATH_INFO = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");
$pathinfo = isset( $Temp_PATH_INFO ) ? $Temp_PATH_INFO : '';
  • 方法三:最后我用了一个插件解决了我的问题(是我人品太差么?)
插件名称:Chinese Tag Names
插件作者:Coconut
插件页面:http://nutsland.cn/blog/archives/177.html
当前版本:1.1
适用于Wordpress版本:2.0.2+
下载地址:http://wordpress.org/extend/plugins/chinese-tag-names/
插件说明
在Wordpress中设定了固定链接之后,有时(多见于Win主机)会出现中文标签(Tag)的固定链接不能访问的问题。
即 http://example.com/tag/中文 不能访问,而 http://example.com/?tag=中文 可以访问。
可以通过修改 class-wp.php 的方式来解决,但是每次Wordpress升级都要重新修改一次,比较麻烦。
本插件提供了便捷的解决方法。
现在支持所有包含中文的固定链接了,包括标签、分类、作者存档页面、文章名等,例如:
http://example.com/tag/中文标签
http://example.com/category/中文分类
http://example.com/archives/中文文章名
http://example.com/archives/author/中文作者名
http://example.com/中文页面名
最后总结,不管用那种方法,只要能解决自己的问题就好,不必纠结过程,重在目的。我承认是我人品差了。
也希望大家能早日找到合适自己的解决方法

引用源文:猛戳这里

wordpress中文标签无法访问的解决方法的更多相关文章

  1. v$lock 视图访问慢解决方法

    V$ 视图访问慢 --解决方法 分析:可能是有数据字典统计信息过久,造成. exec dbms_stats.gather_fixed_objects_stats; ------收集所有数据字典的fix ...

  2. SQL Server不能通过外部IP访问,解决方法

    SQL Server不能通过外部IP访问,解决方法   版本:SQL server 2008 express with tools   打开配置管理器,开启 TCP,右键属性设置TCP端口:   设置 ...

  3. 远程连接MySQL,防火墙阻止访问,解决方法

    远程连接MySQL,防火墙阻止访问,解决方法   xp/2003添加防火墙例外端口 打开防火墙,选择例外选项卡,添加端口 名称:mysqlport 端口号:3306 选中TCP win7添加防火墙例外 ...

  4. WordPress慢的八种解决方法(用排查法解决)

    WordPress的打开速度慢会影响到用户体验和关键词的稳定排名,WordPress为什么加载慢呢?其实很简单的,就是WordPress水土不服,用WordPress的大家都知道,WordPress是 ...

  5. [转]eclipse启动tomcat无法访问的解决方法

    这篇文章介绍了eclipse启动tomcat无法访问的解决方法,有需要的朋友可以参考一下 症状: tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080 ...

  6. IIS7授权错误:“无法验证对路径的访问”的解决方法

    解决方法: iis7 无法验证对路径的访问 1.打开IIS 7管理器,鼠标单击定位到出现了这个错误的网站. 2.在IIS 7管理器的右边,选择“基本设置”. 3.在弹出的“编辑网站”对话框中,单击“连 ...

  7. 【spring】静态资源的访问受限解决方法

    前言 我们知道在整合spring mvc框架的时候需要在web.xml中配置一个servlet 代码如下 <!--spring mvc 的DispatcherServlet--> < ...

  8. 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\web\4b49f661\23a749fc\App_Web_default.aspx.cdcab7d2.zii776dc.dll”--“拒绝访问。 ” 解决方法:

    解决方法: 找到C:\Windows\Temp 目录,在其属性->安全->编辑->添加 IIS_IUSERS用户 赋予"完全控制"权限 ...注意:这可能不是最佳 ...

  9. 【转】NuGet.org 无法访问的解决方法

    打开Nuget,发现又出问题了:未能解析此远程名称:’nuget.org’. 在浏览器中输入 http://nuget.org 会发现是无法打开的. 在cmd命令行里输入: nslookup nuge ...

随机推荐

  1. struts2 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

    Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...

  2. 统一使用GPT分区表,安装MAC 10.10 和 Win8.1 pro双系统

    步骤一: 为Mac OS 分区,为其它分区留白1,使用OSX Mavericks制作的Mac安装U盘按住Option键启动:2,选择安装Mavericks盘符:3,进入OSX安装启动界面,选择磁盘工具 ...

  3. webpack笔记_(3)_First_Project

    知道了怎么样安装,那么学习一下简单的应用吧. 1.安装webpack npm install webpack -g (全局) npm install webpack --save--dev (本地) ...

  4. ubuntu屏幕分辨率问题

    今天在ubuntu下工作时突然屏幕上下各出现了一个大概2厘米的黑条,感觉屏幕被横向拉长了,莫名其妙,开始以为简单的调整下分辨率就好了,在系统设置显示里面发现分辨率只有两个可选参数,并且对象为未知,由于 ...

  5. Linux系统查看系统是32位还是64位方法总结【转】

    转自:http://www.cnblogs.com/kerrycode/p/3785768.html 这篇博客是总结.归纳查看Linux系统是32位还是64位的一些方法,很多内容来自网上网友的博客.本 ...

  6. DataGuard主备归档存在gap的处理办法

    DataGuard主备之间可能由于网络等原因,造成备库和主库之间的归档日志不一致,这样就产生了gap. 解决gap的步骤: 1.在备库获得gap的详细信息 2.将需要的归档日志从主库拷贝到备库 3.备 ...

  7. Linux中重定向命令行

    http://www.ahlinux.com/start/base/3170.html

  8. IOS5基础教程之一-----如何创建XCode项目

    一.IOS的基础知识 1.只有一个应用程序正在运行.在IOS上,每一段时间内只能激活一个应用程序并在屏幕上显示. 2.只有一个窗口.只允许应用程序操作的一个窗口. 3.访问受限.只能在IOS为应用程序 ...

  9. Redis的使用完整版

    [Redis基本] 1.redis安装完成后的几个文件: redis-benchmark  性能测试工具(批量写入)./bin/redis-benchmark -n 10000  即可一次性写入100 ...

  10. oracle VS postgresql系列-行列转换

    [需求]例如先有数据为 id | name ------+--------- | lottu | xuan | rax | ak | vincent 现在需要转换为 id | names ------ ...