WordPress创建的Web.config文件分享

WordPress能利用URL Rewrite实现URL静态化,但是一般Linux主机默认支持URL重写功能,而Windows主机默认是不支持的。

自从操作系统升级到Win7之后,安装了Win7自带的IIS7.5,用来本地测试一些网站确实比较方便。但是不支持URL Rewrite是非常郁闷的。网上搜了一下,原来微软IIS官方网站提供了一个URL Rewrite组件,只不过只支持IIS7及以后的系统。Win7自带的是IIS7.5自然支持这个组件。

安装IIS 的URL Rewrite组件之后,WordPress就可以实现URL静态化了。而且后台设置好静态化网址的风格保存之后,会自动在WP的安装目录生成一个web.config文件,当然应该是跟Linux平台上的.htaccess文件类似的功能。

啰嗦了这么多,分享一下WP自动创建的web.config文件内容吧:

<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>  <system.webServer>
<rewrite>
<rules><clear/>
<rule name=”chinese tag” stopProcessing=”true”><match url=”/tag/(.*)”/>
<conditions logicalGrouping=”MatchAll”/>
<action type=”Rewrite” url=”/index\.php\?tag={R:1}”/>
</rule>
<rule name=”wordpress” patternSyntax=”Wildcard”>
<match url=”*”/>
<conditions>
<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>

这段代码在安装了IIS官方推出 的URL Rewrite组件之后才有效,否则是不起作用的。

当然如果安装了WordPress的话,基本上不用自己手动创建这段代码,博客程序会自己创建并加入内容的,而且还会防止语法或者拼写出错。但是我认为这段代码的作用在于,我们可以在不建WP博客的情况下使用这个文件同样实现URL伪静态……同时web.config还可以做301跳转

当然如果精通web.config语法的同学可以忽略这篇文章。

“WordPress创建的Web.config文件分享”的8个回复

  1. 偶使用301+伪静态失败了,iis7.5的web.config报错,单独用,只有首页可以,其它都不能。

    1. @html6game: 这个是实现WordPress静态化的配置文件,但是需要安装URL Rewrite组件才能用。

  2. 刚刚本地试了,有点尴尬诶。偶是 2008 r2 iis7.5 wp安装在二级目录,把这2个文件放在了wp的根目录(二级 localhost/blog/目录下面),后台设置固定链接 /%year%/%monthnum%/%day%/%postname%.html ,但是无法访问了,哎

评论已关闭。