2012-02-23 55 views
0

我一直向朋友提供我的子域名,直到他設法獲得新域名。如何轉發到包含所有變量的新URL?

現在他有它,我想301重定向所有的舊鏈接到他的領地:

例子:

http://subdomain.my-domain.com/post.php?118&tg=602643 

重定向到

http://subdomain.com/post.php?118&tg=602643 

所以我要繼續起來重定向的post.php中後面的所有變量

我的.htaccess新手 - 你能不能請幫助我提供正確的重寫規則?另外,如果您碰巧有關於.htaccess的任何好文章以及如何管理它,鏈接真的很感激。

感謝

編輯 下面是實際usecases我想做的事: 重定向

http://raketa2.tasselhof.com/nastenka.php?115&up=648483 

http://www.raketa2.cz/nastenka.php?115&up=648483 

然而,由於在沒有更多的子域存在我網站,我看到我的主頁上的404錯誤,因爲這:

/nastenka.php?115&up=648483 -> Provided 404 Error 

我想:

RewriteCond %{Request_URI} ^/nastenka\.php [NC] 
RewriteCond %{QUERY_STRING} ^\d+&tg=\d+$ [NC] 
RewriteRule ^(.*)$ http://www.raketa2.cz/$1?%{QUERY_STRING} [R=301,L] 

,但沒有很好的...

解決 咄!我真的很笨。我剛添加了兩個新的CNAME記錄到我的域名DNS。應該做的伎倆

回答

1

這樣做:

RewrtiteEngine on 
ReWriteBase/

RewriteCond %{HTTP_HOST} ^subdomain\. 
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L] 

的QUERY_STRING post.php?118&tg=602643將出席會議。


  • 假設有你的域名沒有post.php

這樣做:

RewrtiteEngine on 
ReWriteBase/

RewriteCond %{Request_URI} ^/post\.php [NC] 
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L] 

  • 如果post.php出現在您的域名,但你不使用類似的查詢字符串,

這樣做:

RewrtiteEngine on 
ReWriteBase/

RewriteCond %{Request_URI} ^/post\.php [NC] 
RFewriteCond %{QUERY_STRING} ^\d+&tg=\d+$ [NC] 
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L] 
+0

我忘了提及 - 因爲子域是不存在的我網站,我得到這些404日誌在我自己的域名。我也想重定向'http://my-domain.com/post.php?118&tg = 602643'到'http://subdomain.com/post.php?118&tg = 602643' - 我該怎麼做? – 2012-02-23 13:27:14

+0

@PavelJanicek檢查答案中的更新。 – ThinkingMonkey 2012-02-23 13:31:49

+0

沒有幫助。我還用確切的用例和你的幫助更新了我的問題......仍然404 – 2012-02-23 13:52:30

相關問題