2013-05-11 42 views
0

我的網站重定向到與此代碼的新域名:如何將子文件夾重定向到新域但不是root?

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} !newdomain.com$ [NC] 
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301] 

代碼工作,但問題是,我想重定向所有子文件夾而不是根目錄,例如:

我想重定向: olddomain.com/some-folder - > newdomain.com/some-folder

但不 olddomain.com - > NEWDOMAIN

我想根重定向與404 NEWD omain.com

原因是該newdomain.com已經存在了幾年,我想關掉olddomain.com並重定向到新的一個根的所有文章,404

如果有人有一個更好的主張讓我現在。

謝謝

+0

做你的匹配,'^(。*)$'需要的東西,通過使用+而不是* – 2013-05-11 07:42:56

回答

1

就快,但是你的重寫規則說匹配0個或更多字符(*)和重寫,你要1個或更多字符(+)。試試這個:

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} !newdomain.com$ [NC] 
RewriteRule ^(.+)$ http://www.newdomain.com/$1 [L,R=301] 

請記住,您的瀏覽器可能緩存了一些重定向;所以如果您需要清除緩存,或者加載其他瀏覽器來測試,請不要感到驚訝。

+0

你能告訴我,我應該怎麼做olddomain?我應該用404將舊域名重定向到新域名還是其他名稱? – CroiOS 2013-05-11 07:52:11

相關問題