我如何可以重定向用GET參數的URL到正規網址:的.htaccess:重定向與GET參數的URL
從
/index.php?cid=100&id=550&Itemid=1084
到
/my-page
我想:
Redirect 301 /index.php?cid=100&id=550&Itemid=1084 /my-page
但我沒有工作
我如何可以重定向用GET參數的URL到正規網址:的.htaccess:重定向與GET參數的URL
從
/index.php?cid=100&id=550&Itemid=1084
到
/my-page
我想:
Redirect 301 /index.php?cid=100&id=550&Itemid=1084 /my-page
但我沒有工作
如果,你在你的評論要求上面,做不需要在目標要求的查詢參數,你可以做一個簡單的重定向:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^cid=100&id=550&Itemid=1084$
RewriteRule ^/?index.php$ /my-page [R=301]
這條規則將在HTTP服務器主機工作配置,同樣在動態配置文件(.htaccess
樣式文件)中。
如果你想匹配模式是有點更靈活,所以接受任意數字,而不僅僅是正是你在問題中指定的,那麼你可以使用稍微修改條件:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^cid=\d+&id=\d+&Itemid=\d+$
RewriteRule ^/?index.php$ /my-page [R=301]
一般提示:您應該始終將這些規則放置在http服務器(虛擬)主機配置中,而不是使用動態配置文件(.htaccess
樣式文件)。這些文件出了名的錯誤,很難調試,他們真的放慢了服務器。它們僅提供作爲的情況下最後的選擇,你沒有對主機配置控制(讀:真的很便宜的託管服務提供商),或者如果你有依賴於寫自己的重寫規則(這是一個明顯的安全惡夢的應用)。
這就是我需要的!謝謝你的提示。 – christophefongemie
歡迎您! ;-) – arkascha
您當然可以將這樣的請求重定向到該目標URL,但是您肯定會失去那些獲取第一個URL中存在的參數。我懷疑這是你想要的... – arkascha
不,我不需要這個得到論據 – christophefongemie