在这两天折腾主题的过程中,再次注意到伪静态的设置,之前刚建站时用的是最简单的404 错误重定向的方法:复制代码,新建成一个 404.php 丢到 web 根目录,然后到空间控制面板将其指定为 404 错误页面,最后将固定链接修改下,即可实现伪静态。
当时,感觉这个方法最简单,也能达到效果,也就没去深究此法对 SEO 的影响,现在建站快一个月了,百度却仅仅收录了我的首页和一篇动态文章,我这才开始怀疑这个伪静态设置方法对百度 Seo 有很大影响(谷歌等搜索引擎无碍)。通过网络搜素资料发现,确实有博友反映了同样的问题,有人已经发博文告之经过404 错误重定向的伪静态文章,百度会以为这个页面是不存在的,所以直接略过而不会收录!对比了一下我自己的博客,发现还真的吻合!确实百度就只收录了我的首页以及一个动态页面,而谷歌/360 却全部都收录了,而且基本发文一个小时只能就会更新收录!
这样看来,虽然没有确切证据证实这个说法,但是为了长久考虑,我还是决定选用其他伪静态的设置方法。
我的博客是 Win IIS 环境,经过对比站长们的经验教程,我选择了 Rewite 规则来实现 WordPress 的伪静态。具体方法如下:
- 咨询空间商,服务器是否已开启 Rewrite 规则的支持
新增 httpd.ini 文件,写入以下代码,并拷贝至网站根目录
代码语言:javascript复制 [ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# wordpress weijingtai
# For tag
RewriteRule /tag/(.*)/page/(d )$ /index.php?tag=$1&paged=$2
RewriteRule /tag/(. )$ /index.php?tag=$1
# For category
RewriteRule /category/(.*)/page/(d )$ /index.php?category_name=$1&paged=$2
RewriteRule /category/(.*) /index.php?category_name=$1
# For sitemapxml
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]
# For robots.txt
RewriteRule /robots.txt /robots.txt [L]
- 然后到 wordpress 后台修改固定链接为%post_id%.html 即可,当然也可以是其他的, 个人建站时就已经选择了这个形式,所以不能随便更改,否则谷歌就要 K 掉我了!
至于这个方法的原理以及 httpd.ini 的写法,网络上有大把大把的解说,我也就再不赘述了。写这篇文章的主要目的是告诉跟我一样的菜鸟站长们,使用“404 伪静态”的方法会对百度的收录造成一定障碍,还请慎用之!当然,是否属实还得看我今天修改之后的效果如何了,静候佳音吧!