优搜网

WordPress 伪静态规则设置大全(Windows2003/2008/2012 IIS/Apache/Nginx)

那为什么还要写这篇文章?主要是最近因某种原因需要更换成Windows服务器(推荐大家都使用Linux主机空间来搭建WordPress博客),没办法,只好整理一下,以后大家问到,也好直接丢个链接省事。

检测主机是否支持伪静态的方法:在WP后台 > 设置 > 固定链接,设置为 默认带?的那种结构,然后访问任何一篇文章,如果出现 404错误,说明你的主机当前不支持 WordPress伪静态。那你就要自己折腾了,不要完全相信你的主机商所谓的空间已经支持伪静态!

WordPress 伪静态规则设置大全(Windows2003/2008/2012 IIS/Apache/Nginx)

为什么要使用伪静态?

1.最主要的就是通过伪静态来改变网站URL结构,增强网站对搜索引擎的友好度。对搜索引擎来说,静态的URL更受搜索引擎蜘蛛(Spider)的欢迎,也更方便Spider来抓取网页上的相关内容。

2.保证网站内容的实时更新,这样Spider来爬的时候,就不会错过你网站更多精彩的内容。另外,相对真静态来说,也省去频繁生成静态网页对硬盘的伤了。

3.极大方便了seo,加强了网站信任度,对你网站的搜索引擎排名来说,可谓功不可没。

很多朋友在研究SEO优化的时候,因为有些技术原因,伪静态却成了最大的门槛。下面我就分享一下优搜网的WordPress 伪静态方法,帮你省点事,少些弯路,效果嘛,我的博客就是个很好的例子,包括困扰很多站长朋友的分页问题也完美解决。

Windows主机实现伪静态的方法,目前主要有两种,一种是通过php.ini文件实现,一种是通过404.php来实现。以下说的都是针对WordPress,其他程序不知是否可用。使用以下方法对Windows空间下的wordpress设置伪静态前,请先询问主机商是否支持伪静态(IIS Rewrite 组件)

IIS6.0通过httpd.ini 文件设置伪静态规则

IIS6.0 环境是 Windows 主机常用的服务器环境,新建一个 txt 文件,将下面的代码添加到文件中:

[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 /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]

然后另存为 httpd.ini 文件,上传到WordPress站点的根目录即可。(如果你的程序在根目录,那么httpd.ini就放在根目录,如果你的程序安装在子目录(二级目录)那么Web.config就要放在子目录(二级目录))

IIS7.0以上通过web.config 文件设置伪静态规则

从IIS6.0到IIS7.0可谓是一大进步,不仅组件化而且在功能上也有一大的进步。很多虚拟主机用户都没有足够的管理权限,进行URL重写不能直接配置iis,现在我们并不需要到IIS管理器中去配置,只需要一个配置文件Web.config,URL重写只要在Web.config中配置就可以了!新建一个 txt 文件,将下面的代码添加到文件中:

<?xml version=”1.0″ encoding=”UTF-8″?>

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name=”category”>

<match url=”category/?(.*)” />

<conditions logicalGrouping=”MatchAll” trackAllCaptures=”false” />

<action type=”Rewrite” url=”/index.php?category_name={R:1}” appendQueryString=”false” logRewrittenUrl=”false” />

</rule>

<rule name=”tags”>

<match url=”tag/?(.*)” />

<conditions logicalGrouping=”MatchAll” trackAllCaptures=”false” />

<action type=”Rewrite” url=”index.php?tag={R:1}” />

</rule>

<rule name=”Main Rule” stopProcessing=”true”>

<match url=”.*” />

<conditions logicalGrouping=”MatchAll” trackAllCaptures=”false”>

<add input=”{REQUEST_FILENAME}” matchType=”IsFile” negate=”true” />

<add input=”{REQUEST_FILENAME}” matchType=”IsDirectory” negate=”true” />

</conditions>

<action type=”Rewrite” url=”index.php/{R:0}” />

</rule>

<rule name=”wordpress” patternSyntax=”Wildcard”>

<match url=”*” />

<conditions logicalGrouping=”MatchAll” trackAllCaptures=”false”>

<add input=”{REQUEST_FILENAME}” matchType=”IsFile” negate=”true” />

<add input=”{REQUEST_FILENAME}” matchType=”IsDirectory” negate=”true” />

</conditions>

<action type=”Rewrite” url=”index.php” />

</rule></rules>

</rewrite>

</system.webServer>

</configuration>

然后另存为web.config 文件,把web.config上传到WordPress网站根目录即可。(如果你的程序在根目录,那么Web.config就放在根目录,如果你的程序安装在子目录(二级目录)那么Web.config就要放在子目录(二级目录))

Windows IIS环境下通过404.php文件实现伪静态

新建一个php文件,将以下代码内容添加进去,然后另存为404.php(注意保存的格式为UTF-8):

<?php
$qs = $_SERVER['QUERY_STRING'];
$_SERVER['REQUEST_URI'] = substr($qs, strpos($qs, ':80')+3);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include('index.php');
?>

把404.php文件上传到网站根目录,然后到主机控制面板设置404自定义错误指向404.php,然后就可以登陆WP后台的“固定链接”中自定义链接了。

Linux Apache伪静态规则

Apache是 Linux 主机下常见的环境,现在一般的 Linux 虚拟主机都采用这种环境。新建一个 htaccess.txt 文件,添加下面的代码:

 

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ – [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

 

然后上传到 WordPress 站点的根目录,重命名为 .htaccess 即可

Linux Nginx伪静态规则

Nginx 环境一般是Linux 主机 VPS或服务器用户用的比较多,这些用户一般都会自己配置Nginx,或者有专门的人帮你配置,打开 nginx.conf 或者某个站点的配置环境,比如 wpdaxue.com.conf(不同人配置的不一样),在  server   { } 大括号里面添加下面的代码:

location / {

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 即可。

想设置其他链接格式,可参考以下结构标签:

%year%:日志发表的年份,四位数字,如2009
%monthnum%:日志发表的月份,如05
%day%:日志发表的日期,如28
%hour%:日志发表的时间(小时),如15
%minute%:日志发表的时间(分钟),如43
%second%:日志发表的时间(秒),如33
%postname%:日志标题的缩略版本(日志/页面编辑界面上的日志别名)。因此“This Is A Great Post!”在URI中会变成this-is-a-great-post。
%post_id%:日志的唯一ID,如423
%category%:分类名称的缩略版本(添加新分类/编辑界面上的分类别名)。嵌套的子分类会作为嵌套子目录出现在URI中。出于运行方面的考虑,不推荐以%category%作为固定链接的起始部分。
%tag%:标签名称的缩略版本(添加新标签/编辑界面上的标签别名)。出于运行方面的考虑,不推荐以%tag%作为固定链接的起始部分。
%author%:作者名称的缩略版本。


优搜网-网站优化,从SEO到互联网营销,提供最优的网站优化解决方案
优搜网,从SEO到互联网营销,为您提供最优的网站优化解决方案。提供网站优化,百度优化,关键词排名,百度推广,服务器租用托管及高权重(pr)域名转让业务。
关于uiseo.cn

本文分类: SEO技术

发布时间: 2015年12月14日 13:53

本文链接: http://www.uiseo.cn/wordpress-pseudo-static

继续查看有关:/ / / / 的文章

若无特别注明,文章皆为优搜网原创,转载请注明出处


文章评论
共收到 1 条评论
广告招租