好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

在windows虚拟主机下WordPress伪静态后中文标签分类

在windows虚拟主机下WordPress伪静态后中文标签分类404错误问题

2014年8月,我的网站80后励志网又有了比较大的进步,日IP流量已经很接近3000IP了,这导致之前使用的万网M3主机的30G流量不够用了,本来想购买点流量应付过这个月,但是买流量的话,最少得买50G的,50G流量就要250元,空间商建议我还不如直接升级主机,我想想也是,结果就换了万网的G1主机.

换了以后才发现问题来了,万网G1只有windows的,没有Linux的,这样的话,我之前的很多设置都得改.

首先第一个问题就是80后励志网的一个二级目录博客的伪静态问题,我百度了一下,倒是很快解决掉了,也把这个方法分享在博客里.

windows环境下WordPress的伪静态是通过httpd.ini来实现的,用txt建立一个httpd.ini文件,内容如下:

[ISAPI_Rewrite]  CacheClockRate 3600  RepeatLimit 32    #  For  sub  RewriteRule /blog/sitemap.xml /blog/sitemap.xml [L]  RewriteRule /blog/favicon.ico /blog/favicon.ico [L]  RewriteRule /blog/tag/(.*)/page/(\d+)$ /blog/ index \.php\?tag=$1&paged=$2  RewriteRule /blog/tag/(.+)$ /blog/ index \.php\?tag=$1  RewriteRule /blog/category/(.*)/page/(\d+)$ /blog/ index \.php\?category_name=$1&paged=$2  RewriteRule /blog/category/(.*) /blog/ index \.php\?category_name=$1  RewriteRule /blog/wp-(.*) /blog/wp-$1 [L]   --phpfensi.com   RewriteRule ^/blog/$ /blog/ index .php [L]  RewriteRule /blog/(.*) /blog/ index .php/$1 [L]  RewriteRule /blog/page/(.*)/?s=(.*) /blog/ index \.php\?s=$2&paged=$1  RewriteRule /blog/page/(.*) /blog/ index \.php\?paged=$1 

注: /blog/是我二级目录博客的地址,如果大家的WordPress是放在根目录的话,就直接用[/]即可.

第二个问题,伪静态后,中文标签分类出现404错误,因为Win主机下wordpress不支持中文tag标签.

解决方法如下:

1.打开wp-include文件夹,找到并打开编辑class-wp.php文件.

2.查找代码:

$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : '';

把这句代码替换成:

$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");

3.查找代码:

list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] );

把这句代码替换成:

$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");

查看更多关于在windows虚拟主机下WordPress伪静态后中文标签分类的详细内容...

  阅读:59次