2011-04-19 25 views
0

我得與我想改寫到一個不同的子域查詢字符串的鏈接。我已經試過如下:國防部重寫與查詢鏈接到其他子域

RewriteRule ^/forum/viewtopic.php(.*)$ http://sub2.domain.com/viewtopic.php$1 [R=301,L,QSA] 

還有:

RewriteCond %{QUERY_STRING} 

RewriteRule ^forum/viewtopic.php(.*) http://sub2.domain.com/forum/viewtopic.php?%1 

你可以想像,它沒有飛起來。我見過的大多數示例都涉及到指定實際的查詢字符串,但是,我的鏈接有幾個變量傳遞,並不總是以相同的順序。是否有可能改寫基於viewtopic.php一個URL(任何以後)

原文鏈接:

sub1.domain.com/forum/viewtopic.php?p=123&sid=c75edda9 

sub1.domain.com/forum/viewtopic.phpt=321&start=0&postdays=0&sid=6e97b05 

sub1.domain.com/forum/viewtopic.php?t=45&view=next&sid=f799 

新鏈接:

sub2.domain.com/forum/viewtopic.php?p=123&sid=c75edda9 

sub2.domain.com/forum/viewtopic.php?t=321&start=0&postdays=0&sid=6e97b05 

sub2.domain.com/forum/viewtopic.php?t=45&view=next&sid=f799 
+0

此規則起作用。 'code' RewriteRule^forum/viewtopic.php(。*)$ http://sub2.domain.com/forum/viewtopic.php%1 [R,L]'code' – ahmeddirie 2011-04-19 19:06:29

回答

1

簡單:

RewriteRule ^forum/viewtopic.php$ http://sub2.domain.com/forum/viewtopic.php [R=301, L] 

由於不修改查詢字符串,因此不需要任何[QSA]。

+0

沒有飛。它產生的錯誤:500內部服務器錯誤 – ahmeddirie 2011-04-19 17:26:11

+0

我修改了規則,仍然沒有去。它進入新頁面,但刪除查詢字符串。 'code' RewriteRule^forum/viewtopic \ .php $ sub2.domain.com/forum/viewtopic.php? [R,L]'代碼' – ahmeddirie 2011-04-19 18:52:01

+0

鬆散'?',否則它將用空來替換QueryString。 – 2011-04-19 22:00:37