win主机用web.config和httpd.ini实现301重定向

当你准备好好看这篇文章的时候,你应该已经知道了301重定向的作用与意义了,那么这里就不多加解释了。

那么我唯一想提的就是关于域名带与不带www的区别,并且301重定在其中的意义,详情:域名带与不带www的区别

这里我们以将域名“qiankoo.com”重定向到“www.qiankoo.com”为例

Windows虚拟主机用户的实现301重定向的方法:

Windows server 2003 IIS6.0虚拟主机下301重定向代码

httpd.ini文件配置的代码如下,放置位置:网站根目录

[ISAPI_Rewrite]

 CacheClockRate 3600

 RepeatLimit 32

 RewriteCond Host: ^qiankoo\.com$

 RewriteRule (.*) http\://www\.qiankoo\.com$1 [I,R]

注:记得把其中的域名换成你的域名。如果你的网站根目录中的这个文件已经存在(伪静态),可以将上面的代码直接加到里面

Windows server 2008 IIS7.5虚拟主机下的urlrewrtie规则

web.config文件代码如下,放置位置:网站根目录

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="WWW Redirect" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^qiankoo.com$" />
</conditions>
<action type="Redirect" url="http://www.qiankoo.com/{R:0}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

记得把其中的域名换成你的域名。

注:经实验,此方法只能重定向首页,如需整站301跳转,需要在iis7中新建一个站点不带www,随便指定一个目录,设置这个站点301跳转到带www 的即可,这点网上很多地方都没有说

二,多对域名重定向怎么写规则?

1、对于httpd.ini 配置文件中需要另写一行重定向代码。

如下,将域名“qiankoo.com”、“www.vuln.cn”都重定向到“www.qiankoo.com”

[ISAPI_Rewrite]

 CacheClockRate 3600

 RepeatLimit 32

 RewriteCond Host: ^qiankoo\.com$

 RewriteRule (.*) http\://www\.qiankoo\.com$1 [I,R]

 RewriteCond Host: ^seo.qiankoo\.com$
RewriteRule (.*) http\://www\.qiankoo\.com$1 [I,R]
 2. web.config配置文件中只需在被重定向的域名后面加一个竖线”|”跟上需要被重定向的增加域名即可。

如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="WWW Redirect" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^qiankoo.com|www.vuln.cn$" />
</conditions>
<action type="Redirect" url="http://www.qiankoo.com/{R:0}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

注:因为即使是做了301跳转之后,搜索引擎对你另外一个带www的域名还是会有一个考察期的,这个考察与新站稍有不同。权重一般不会丢失。所以做过301跳转后会有一个作用期,不会马上生效!

原文链接:http://www.vuln.cn/?p=283

上一篇:2016022606 - redis事务


下一篇:jsoi2014前两轮回眸