當你准備好好看這篇文章的時候,你應該已經知道了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跳轉后會有一個作用期,不會馬上生效!