在創建我們的汽車電子商務商店時,我們以名稱(「/」)命名了一些正斜槓/ Virgules產品,例如:VOLKSWAGEN GOLF/GTI
。電子商務引擎將此產品的URL重寫爲GOLF%7B47%7DGTI
。我們決定繼續前進,並將我們的所有產品重新命名爲使用世界「AND」,而不是正斜槓/ virgule。mod_rewrite編碼正斜槓困境
我們在網絡上有很多鏈接,我總是使用mod_rewrite來確保這些鏈接在我們更改產品的命名約定後仍然有效。然而,這一個讓我難倒了!這裏是我想要做的事:
OLD URL: http://mystore.com/products/MK4-GOLF%7B47%7DGTI-KONI-STRUTS.html
NEW URL: http://mystore.com/products/MK4-GOLF-AND-GTI-KONI-STRUTS.html
URL的「MK4」部分可以是任何的Mk1,Mk2的,MK3,的Mk4,MK5或MK6的,我們還提供各種支柱的每生成高爾夫/ GTI。因此,我需要編寫一個規則,用URL中的GOLF-AND-GTI代替Golf/GTI,並在目標字符串之前或之後執行任何操作。
我現在的(不正確)重寫規則是這樣的:
RewriteRule ^products/(.*)-GOLF%7B47%7DGTI-(.*) http://www.mystore.com/products/$1-GOLF-AND-GTI-$2 [B,R,L]
我已經出來拉我的頭髮在這最後幾個小時,只是似乎無法得到一個工作規則地點。任何援助將不勝感激!
非常感謝您的時間!
嗨,約翰,不需要用「已解決」來標記你的問題:你接受下面的答案的事實,明確地表明未來的訪問者它解決了你的問題。乾杯。 –