1
http://www.old-domain.com/news.php?NewsID=30888&test=3
到:
http://www.new-domain.com/?NewsID=30888&test=3
我需要只在新域的參數不是頁面「news.php '
http://www.old-domain.com/news.php?NewsID=30888&test=3
到:
http://www.new-domain.com/?NewsID=30888&test=3
我需要只在新域的參數不是頁面「news.php '
當您使用重定向或重寫時,默認情況下會發生這種情況。例如,在old-domain.com
域的文檔根htaccess的文件:
Redirect 301 /news.php http://www.new-domain.com/
的任何查詢字符串(例如?NewsID=30888&test=3
)那去/news.php
將被自動地附加到http://www.new-domain.com/
。
同樣的,mod_rewrite的:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain.com$ [NC]
RewriteRule ^news.php$ http://www.new-domain.com/ [L,R=301]
編輯:有價值的信息:
ñ我的情況下,可以與news.php,所以它不是基於發生的任何網頁它在news.php上。我只需要在可能來自任何頁面的新域上的參數。例如:
old-domain.com/pagename.php?var1=data1&var2=data2
到new-domain.com/?var1=data1&var2=data2
那麼這將是:
RedirectMatch 301 ^/(.*) http://www.new-domain.com/
或
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain.com$ [NC]
RewriteRule^http://www.new-domain.com/ [L,R=301]
就像我在我的回答說,實際的路徑是不相關的。 查詢字符串會自動附加,您不需要做任何特殊的事情。
感謝您的快速回答,但我不期待這一點。就我而言,它可能會發生在news.php以外的任何頁面,所以它不是基於news.php。我只需要在可能來自任何頁面的新域上的參數。 例如:http://www.old-domain.com/pagename.php?var1=data1&var2=data2 至 http://www.new-domain.com/?var1=data1&var2=data2 – 2012-08-14 20:39:12
請參閱上面的修改然後 – 2012-08-14 20:42:31
非常感謝Jon,工作! – 2012-08-14 20:55:00