2014-10-20 81 views
1

我需要重寫一個網址,具有&符號查詢字符串中的第一個字符。我需要能夠將其刪除。RewriteRule網址到字符串替換&

所以起始網址是:

/shop/partner;jsessionid=7giu21yo7tKsqXAL5Wv8.dwapp01? &碼= PARTNERDHTE & partnerBackToUrl = partnersiteurl

的&代碼是我的問題

我的規則至今都

RewriteCond %{QUERY_STRING} ^code=(.*)$ [NC] 
RewriteRule ^/shop/partner(.*)$ /store/partner/redirect/code/%1? [R=301,L] 

這個作品,如果我在的&代碼前面取下&。 我需要的東西可以簡單地從代碼前面剝去&,然後讓我的規則運行。

回答

1

你可以調整你的網址,讓&code

RewriteCond %{QUERY_STRING} (?:^|&)code=([^&]+) [NC] 
RewriteRule ^/?shop/partner(.*)$ /store/partner/redirect/code/%1? [R=301,L] 
+0

非常感謝!這有助於我的原始問題,所以將它標記爲已解決,但我將如何停止任何額外的參數設置爲代碼參數。想要拋出查詢字符串上的任何其他參數 – BobB 2014-10-20 19:25:23

+0

如何設置額外參數我無法理解 – anubhava 2014-10-20 19:29:15

+0

代碼參數正在獲取以代碼值開始的查詢字符串的其餘部分。所以它最終成爲PARTNERDHTE&partnerBackToUrl = partnersiteurl – BobB 2014-10-20 19:35:30