wordpress作为世界上最流行的免费建站系统,在seo方面也设计的很合理。wordpress默认的链接是动态的形式,虽然这点对于现在的
搜索引擎爬虫抓取内容已经不会再构成影响了,但是伪静态的链接更具有层级结构关系,更有利于蜘蛛抓取。下面SEO博客就以www.xiaoxinglai.com为
例来说说各个web系统下wordpress的伪静态规则。
apache环境下的wordpress伪静态规则:
<IfModulemod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} ^wp-content.*
RewriteCond %{REQUEST_FILENAME} ^wp-admin.*
RewriteCond %{REQUEST_FILENAME} ^wp-include.*
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
新建一个.htaccess文件并将以上代码写入.htaccess文件中,上传至wordpress站点的根目录中。
IIS环境下的wordpress伪静态规则(方法一):
打开站点根目录下的web.config文件并加入以下代码:
<rewrite>
<rules>
<rulename=”Main Rule”stopProcessing=”true”>
<matchurl=”.*”/>
<conditionslogicalGrouping=”MatchAll”>
<addinput=”{REQUEST_FILENAME}”matchType=”IsFile”negate=”true”/>
<addinput=”{REQUEST_FILENAME}”matchType=”IsDirectory”negate=”true”/>
</conditions>
<actiontype=”Rewrite”url=”index.php/{R:0}”/>
</rule>
</rules>
</rewrite>
IIS环境下的wordpress伪静态规则(方法二):
新建一个httpd.ini文件并加入以下代码:
[ISAPI_Rewrite]
# Defend your computer from some worm attacks
#RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O]
# 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 through
RewriteRule /tag/(.*) /index\.php\?tag=$1
RewriteRule /software-files/(.*) /software-files/$1 [L]
RewriteRule /images/(.*) /images/$1 [L]
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /sitemap.xml.gz /sitemap.xml.gz [L]
RewriteRule /robots.txt /robots.txt [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]
上传至wordpress站点根目录。nginx环境下的wordpress伪静态方法:
location / {
index index.html index.php;
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
将以上代码加入到nginx.conf文件的Server段内。以上就是所有web环境下的wordpress伪静态规则。