2011-02-12 24 views
1

我想用mod_rewrite重寫一個url。 問題是要重寫的URL包含文字+(加號),這也是我需要從url獲得的變量的分隔符...加號(+文字)在url中用mod_rewrite重寫..怎麼樣?

當前網址: www.domain.com/page/756 /沒有/管道工+倫敦/

我想要的部分 「管道工+倫敦」 採取和改寫爲:

新的URL: domain.com/pages/Plumbers/London/

試過但它不起作用:

RewriteRule頁面/(。 (*。*)//pages/$ 2/$ 3/[R = 301,L]

任何幫助將不勝感激! 在此先感謝!

+0

有任何方式來改變分隔符?你不能改變被編碼爲'+'的空白區域,但是如果你可以改變分隔符到另一個字符,你的問題將會更容易解決。 – 2011-02-12 14:38:04

回答

2

我會改變分隔符。

啊簡單的錯誤。

點(。)與完整的URI本身匹配,或者它匹配任何單個字符。 嘗試將其更改爲:

RewriteRule page/(.*)/no/(.*)\+(.*)/ /pages/$2/$3 [R=301,L] 

(我的正則表達式是有點生疏,但我相信會做的伎倆。) 也許使用非貪婪操作:(。*?)

+0

太棒了,像魅力一樣工作!非常感謝!! – quokka 2011-02-12 14:41:08