2011-08-17 221 views
1

我有我認爲是一個奇怪的問題。使用htaccess將舊網站重定向到新網站

我爲一位客戶設計了一個新網站,他希望3箇舊網站託管在其他地方指向他的新網站。

他的託管公司做的是更改3箇舊站點中每個站點的A記錄以指向新站點的IP地址。

他們暗示我可以通過修改在新網站上的htaccess文件有3歲的URL解析到新網站...

...但我還沒有線索如何做到這一點的工作。我試過使用301重定向(下面的代碼),但它似乎並沒有工作。

任何人都可以幫忙嗎?

代碼我已經試過:

Options +FollowSymlinks -MultiViews 
RewriteEngine on 

RewriteCond %{HTTP_HOST} ^www\.OldSite1\.co.uk$ [NC] 
RewriteRule ^(.*)$ http://NewSiteURL.co.uk/$1 [R=301,L] 

只是爲了澄清:

1)htaccess的是在新的網站,託管公司根本改變舊的A記錄站點指向新站點的IP地址。

2)我沒有託管任何舊站點設置,所以沒有index.php等修改。

3)重定向將位於新網站的h​​taccess中,因此需要將每個舊網址標識爲重定向到新網址。

它甚至可以做到這一點?

回答

1

製作的index.php與

<?php 
header('Location: http://www.newsite.com/'); 
?> 

最快的方法)

+0

當然,這不適用於主機上默認文檔以外的其他任何內容。 – 2011-08-17 11:36:03

+0

搜索引擎不會那樣,301重定向更好。 – Dalmas 2011-08-17 11:36:19

1

看起來正確,只要URL的路徑部分是在舊的網站,並在新的網站上的相同。我只會將QSA標誌添加到重寫規則中。正則表達式也有點大材小用,你可以使用:

RewriteCond %{HTTP_HOST} =www.OldSite1.co.uk [NC] 

只要確保在.htaccess文件被讀取(即你沒有AllowOverride None),或 - 更好 - 把重寫規則在主服務器配置中,而不是在.htaccess文件中。

相關問題