我想要做的是一個非常簡單的想法,但不知何故它不工作。我需要這個重寫規則的工作:如何使這個重寫規則有效?
RewriteRule ^([a-zA-Z0-9-]+)/?([a-zA-Z0-9-=]*)$ index.php?op=$1&$2 [L,NC]
我認爲這是相當多的自我解釋,但我希望規則第一正則表達式組通過爲op
參數和第二正則表達式組被原樣傳送給腳本。就像這樣:
http://example.org/view/?post_slug=awesome-apache-mods - > http://example.org/index.php?op=view&post_slug=awesome-apache-mods
這裏的問題是,第一部分工作得很好,這意味着op
參數設置正確,但是第二部分丟失。我的意思是文學迷失。當我發出print_r($_GET)
時,只有op
參數。
Array
(
[op] => view
)
我想知道這裏有什麼問題嗎?
重寫規則^([A-ZA-Z 0-9 - ] +)/?([a-zA-Z0-9 - =] *)$ index.php?op = $ 1&post_slug = $ 2 [L,NC]你錯過了第二個變量,因爲它是空值變量發送不顯示在print_R – 2013-02-20 20:04:32
我不能看到匹配post_slug的正則表達式中的任何(在分數_下)? – 2013-02-20 20:14:06
@IesusSonesson第二個var並不總是'post_slug'。關鍵是它可以是任何東西。 – 2013-02-21 07:08:22