2016-11-23 53 views
-1

此外到較早的問題,我有地方,我需要重寫網址如對於某些URL apache的重寫是HTTP代替https

http://example.com/index.php?cPath=371_1659_1660&main_page=products_categories 

http://example.com/index.php?cPath=371_1659_1660 

我用這個解決它

RewriteCond %{QUERY_STRING} ^(.)(^|&)main_page=products_categories(.)$ 
RewriteRule ^(.*)$ /$1?%1%3 [R=301,L] 

我還發現,我也有同樣的網址,如HTTPS這樣

https://example.com/index.php?cPath=371_1659_1660&main_page=products_categories 

http://example.com/index.php?cPath=371_1659_1660&main_page=products_categories 

是給我複製頁面處罰

是否可以修改我的重寫規則,所以,它也同時重定向到HTTP網頁去掉了

&main_page=products_categories 

後綴,這樣

https://example.com/index.php?cPath=371_1659_1660&main_page=products_categories 

將成爲

http://example.com/index.php?cPath=371_1659_1660 
+1

爲什麼downvote?這個問題很清楚,並且簡要說明了迄今爲止所需要的和我所做的事情! –

回答

1

不知道爲什麼,這個問題是不公平的投票下來。

您可以使用此單一規則這兩個URL重定向到http://...

RewriteEngine On 

RewriteCond %{QUERY_STRING} (?:^|&)main_page=products_categories(?:&|$) [NC] 
RewriteCond %{QUERY_STRING} (?:^|&)(cPath=[^&]+) [NC] 
RewriteRule^http://%{HTTP_HOST}%{REQUEST_URI}?%1 [R=301,L,NE] 
+1

完美工作。謝謝 –