1
我有都是這種格式什麼是重寫www.example.com/?city_name="New-York」到/城市/紐約
www.example.com/?city_name="New-York"
URL和我在想,如果最有效的方法有一種方法可以自動將這個url重寫爲
www.example.com/cities/new-york
使用重寫規則。
我有都是這種格式什麼是重寫www.example.com/?city_name="New-York」到/城市/紐約
www.example.com/?city_name="New-York"
URL和我在想,如果最有效的方法有一種方法可以自動將這個url重寫爲
www.example.com/cities/new-york
使用重寫規則。
在查詢字符串上使用RewriteCond
,然後使用結果RewriteRule
。
RewriteCond %{QUERY_STRING} ^city_name="([\w]+)" [NC]
RewriteRule (.*) /cities/%1? [L,R]
的RewriteCond
運行在查詢字符串正則表達式,尋找你city_name
參數。 NC
是no case標誌,使正則表達式不區分大小寫。在實際的RewriteRule
指令中,我們完全重寫了/cities/%1
的路徑,其中%1
是來自上一次成功的RewriteCond
指令的第一個匹配組,在這種情況下,請求的城市爲slug。我們在末尾放置了一個?
以擦除請求中的查詢字符串,然後傳遞L
和R
標誌以發出完整的302重定向。
我還沒有嘗試過任何東西,因爲我不知道要往哪個方向走,而且我不太熟悉apache或mod-rewrite,但是我查看了我的.htaccess文件並試圖查看可用的不同的正則表達式模式。 –
'RewriteRule^cities /(.*)$?city_name = $ 1'的一些線條 – Gerben
mod_rewrite的文檔是[over here](http://httpd.apache.org/docs/2.2/rewrite/),並且有很多例子。 – larsks