2013-07-05 159 views
0

其中一個搜索引擎已經出現在我的測試網站:new.mydomain.co.uk,現在我已經完成了測試,我想將這些網址重定向到使用相同擴展名的我的主站點。子域名通配符重定向

實施例:

new.mysite.co.uk/thispage/需要指向www.mysite.co.uk/thispage等。我已經搜索並找到了一個解決方案(複製如下),我可以實現我的目標,但是這個原因只是將'測試站點'指向www.mysite.co.uk而不是擴展名。

這是我使用的代碼:

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

我已經花了幾個小時試圖找出什麼我做錯了,但已經耗盡了我自己的研究,我需要請專家幫忙我解決了這個問題。

非常感謝

+0

這只是重寫瀏覽器上的網址,而不是重定向..你想重定向還是隻是重寫URL? – 2013-07-05 23:57:30

+0

我寧願有永久重定向,因爲我不想重複內容。我希望這是有道理的。 – Huggies

+0

在這裏閱讀解決方案https://kb.mediatemple.net/questions/242/How+do+I+redirect+my+site+using+a+.htaccess+file%3F – 2013-07-06 00:16:46

回答

1

我會建議,而不是內部的.htaccess,做在你的正確的Apache虛擬主機配置。像這樣的東西會重定向new.mysite所有流量與附加正確的路徑www.mysite:

<VirtualHost *:80> 
    ServerName new.mysite.co.uk 
    Redirect permanent/http://www.mysite.co.uk/ 
</VirtualHost> 

如果你只是包括「重定向」行這應該爲你的.htaccess文件工作,以及如果你不想直接編輯apache文件。 (除非你的新和www共享同一個物理文件夾)

一個更復雜的重寫規則可能類似於你的建議:前.UK

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

用反斜槓。這個問題更適合於serverfault.com

+0

謝謝你的建議。不幸的是,我無法編輯Apache文件(共享主機),所有需要通過.htaccess完成的事情。另外,新的。和www。共享相同的文件夾。我想這意味着這個問題沒有真正的解決方案? – Huggies

+0

不理想,但應該可以使用RewriteRule來捕獲請求的虛擬主機。 – flurdy

+0

對不起,有點慢。你是否建議我可以將以下內容添加到我的htaccess中? – Huggies