Mod-Rewrite

ModRewrite 將站點合二為一

  • June 27, 2014

嗨,我在配置具有相當複雜要求的重寫時遇到了一些問題

瀏覽 (www.)A.com 應該 => www.B.com

瀏覽 (www.)A.com/{anything}/blah/foo/yes 應該 => {anything}.B.com/blah/foo/yes

我有根重寫工作,但無法讓這兩個規則同時工作。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?A\.com [NC]
RewriteRule ^$ http://www.B.com [NC,R=301]
Redirect /surveys/ http://surveys.B.com/

這是我試圖將子目錄直接重定向到子域而不是使用正則表達式。

我不會使用Redirect語句來做到這一點,而只會使用RewriteRule。像這樣的東西應該​​工作:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?A\.com [NC]
RewriteRule ^$ http://www.B.com [NC,R=301]
RewriteRule ^([^/]+)(.*)$ http://$1.B.com$2 [NC,R=301]

引用自:https://serverfault.com/questions/608080