在網(wǎng)站運(yùn)營(yíng)的過(guò)程中,有時(shí)因一些不同的訪問(wèn)要求(譬如使用http://1.abc.com訪問(wèn)的是http://www.abc.com/1,使用http://2.abc.com訪問(wèn)的是http://www.abc.com/2),需對(duì)網(wǎng)站訪問(wèn)進(jìn)行重定向設(shè)置。在我司的平臺(tái)上,最直接最有效的做法是通過(guò)URL重寫(xiě)規(guī)則實(shí)現(xiàn)。下面給出URL重寫(xiě)實(shí)現(xiàn)重定向的的一些常用范例。
注意:在設(shè)置301重定向之前務(wù)必備份相應(yīng)目錄下的.htaccess文件。(Windows主機(jī)是在/htdocs目錄下,Linux主機(jī)是在根目錄下)
1.重定向domain.com到www.domain.com
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
2.重定向www.domain.com到domain.com
RewriteEngine On
RewriteCond %{HTTP_HOST} !^domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]
3.重定向olddomain.com到www.newdomain.com
RewriteEngine On
RewriteCond %{HTTP_HOST} !olddomain.com$ [NC]
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301]
4.重定向olddomain.com 到 newdomain.com
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !olddomain.com$ [NC]
RewriteRule ^(.*)$ http://newdomain.com/$1 [L,R=301]
5.重定向domain.com/file/file.php 到 otherdomain.com/otherfile/other.php
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain.com$