昨天晚上突然发现一款速度比较快的香港主机,所以将原来的美国主机换回来,但是网站搬家之后发现,只有首页能打开,找了很多原因,最好才发现是由于他们都是Windows主机,而我们做WP网站的朋友都知道喜欢弄伪静态什么的。而Win空间要想完美支持伪静态可得大费周章,梦之翼亦是,找了不少的教程,自己也摸索了下,一个字累,还好最后搞定了.
我发现网上的教程几乎都是博客链接能伪静态,可中文标签的链接打不开,出现404错误页。而下面介绍的方法则是非常完美的。

下面我就来说说如何完美实现WP博客的伪静态

1、首先写httpd.ini (用记事本即可,写好后放在根目录下OK)

 

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files

# from accessing through HTTP

# Rules to ensure that normal content gets throughRewriteRule /software-files/(.*) /software-files/$1 [L]

RewriteRule /images/(.*) /images/$1 [L]

RewriteRule /sitemap.xml /sitemap.xml [L]

RewriteRule /favicon.ico /favicon.ico [L]

# For file-based wordpress content (i.e. theme), admin, etc.

RewriteRule /wp-(.*) /wp-$1 [L]

# For normal wordpress content, via index.php

RewriteRule ^/$ /index.php [L]

RewriteRule /(.*) /index.php/$1 [L]

 
2、比如博客地址含有中文,或者是标签是中文的,就会转向到404页面,是通过httpd.ini解决不了的,必须来修改源代码。

 
修改网站目录下wp-includes/class-wp.php文件(请先行备份):

 
第一步:找到

 

$pathinfo = $_SERVER["PATH_INFO"];

 
修改为

 

$pathinfo = mb_convert_encoding($_SERVER["PATH_INFO"], ‘UTF-8′, ‘GBK’); (注意php中符号和文档中符号的不同)

 
第二步:找到

$req_uri = $_SERVER["REQUEST_URI"];

修改为

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

就这样,中文的TAG标签页等都可以打开了的。

 
哈哈 总共就两步还是蛮简单的!快去试试吧!

本文由梦之翼网络整理提供,欢迎返回首页继续浏览

 

Windows 2003 虚拟主机空间上如何实现WordPress网站的伪静态

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据