[英]Redirect URL with query string
我目前負責永久重定向客戶端的多個URL。 我對沒有查詢字符串的URL使用“重定向301”命令,效果很好。
現在,我需要永久重定向包括查詢字符串在內的多個選擇性URL。 問題是,不允許我將查詢字符串重寫為漂亮的URL,因此我需要找到一種方法將帶有查詢字符串的舊URL重定向到帶有查詢字符串的新URL(哦,男孩)。
例子):
Old: /loremipsum/dolorsit/?lang=en
New: /consetetur/sadipscing/?lang=en
Old: /dolorsit/?lang=en
New: /sadipscing/?lang=en
Old: /loremipsum/dolorsit/?lang=it
New: /consetetur/sadipscing/?lang=it
Old: /dolorsit/?lang=it
New: /sadipscing/?lang=it
由於網址始終是不同的且具有選擇性,因此我無法使用某種形式的大規模重定向。 我需要做的是手工使用查詢字符串將每個URL重定向到新URL。
我正在使用:
RewriteCond %{QUERY_STRING} ^lang=en$
RewriteRule ^loremipsum/dolorsit/$ http://domain.com/consetetur/sadipscing/?lang=en [R=301,L]
它僅在不附加查詢字符串時才起作用,這很奇怪。
幫助將不勝感激,我真的瘋了。
您可以使用:
RewriteCond %{QUERY_STRING} ^lang=en$
RewriteRule ^loremipsum/?$ /dolorsit/ [R=301,L,NC]
RewriteCond %{QUERY_STRING} ^lang=it$
RewriteRule ^loremipsum/?$ /consetetur/ [R=301,L,NC]
默認情況下,查詢字符串會附加到目標URL,因此?lang=en
會自己附加到新URL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.