2012-10-02 54 views
0

我設法創建一個基本的規則與htaccess的設置與301重定向所有請求,用戶類型爲* .domain.com的.htaccess域名的301重定向與排斥

因此,所有:* .domain.com請求重定向到www.home.domain.com

RewriteCond %{HTTP_HOST} !^www\.home\.domain\.com$ [NC] 
RewriteRule ^(.*)$ http://www.home.domain.com/$1 [L,R=301] 

現在我想要對其進行修改,並與302重定向沒有所有請求最初的* .home.domain.com但繼續保持以前的條件

我已經閱讀了一些答覆,但我很困惑從章ex語法來應用與我的情況類似的回覆。

更新:感謝喬恩林的答覆,一個更澄清

這是從一開始我的錯,我的理解是,當我讀您的回覆

我希望所有:

*.home.domain.com >> 301 >> www.home.domain.com 
not *.home.domain.com >> 302 >> www.google.com (for example) 

更新2:

請問

這項工作?

RewriteCond %{HTTP_HOST} ^(.*)\.home\.domain\.com$ [NC] 
RewriteCond $1 !^www\.$ [NC] 
RewriteRule ^(.*)$ http://www.home.domain.com [R=301] 

RewriteCond %{HTTP_HOST} !^(.*)\.home\.domain\.com$ [NC] 
RewriteRule ^(.*)$ http://www.google.com [L,R=302] 

回答

0

嘗試:

# all : *.domain.com requests redirect to www.home.domain.com 
RewriteCond %{HTTP_HOST} ^[^.]+\.domain\.com$ [NC] 
RewriteRule ^(.*)$ http://www.home.domain.com/$1 [L,R=301] 

# all requests that didn't have originally the *.home.domain.com 
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+\.domain\.com$ [NC] 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule ^(.*)$ http://www.home.domain.com/$1 [L,R=302]