OK,說我的博客網站myurl.org
許多鏈接到一個單獨的域:將olddomain查詢字符串佈局重定向到newdomain和新的查詢字符串佈局?
old.myurl.org?oldvar=foo
只有old.myurl.org
不再存在,並且通過new.myurl.org
已被替換。
如果查詢字符串瓦爾是相同的new.myurl.org
,我相信我會利用.htaccess
改寫:
RewirteCond %{http_host} ^old.myurl.org$ [NC]
RewriteRule ^(.*)$ new.myurl.org [L,R=301,QSA]
唯一的問題是,我還需要從oldvar
查詢字符串VAR改爲newvar
和保存它的數據(foo)。
有很多關於如何以不同方式重寫查詢字符串變量的例子,但我似乎無法找到這種情況的例子。
我需要重寫:
old.myurl.org?oldvar=foo
要:
new.myurl.org?newvar=foo
編輯
此外,我必須考慮一些潛在的查詢字符串鍵值,但並非所有人都永遠在場。
所以我可能需要:
old.myurl.org?oldvar=foo&oldvar2=bar --> new.myurl.org?newvar=foo&newvar2=bar
或
old.myurl.org?oldvar2=bar --> new.myurl.org?newvar2=bar
這可能甚至是不可能的,但在一種情況下,我需要剝去查詢字符串值的一部分。所以?oldvar=foo{term}
可能需要變成?newvar=foo
再次感謝!
感謝Prix,這有幫助。 –
@AaronWaller [請將它標記爲正確的答案,如果它解決了您的問題,請參閱這裏。](http://stackoverflow.com/about) – Prix
問題雖然...如果未滿足%{QUERY_STRING}條件重寫規則仍然適用域重寫?此外,我有幾個潛在的查詢字符串鍵,我必須考慮,其中沒有保證。我將用一個例子編輯原始問題...... –