0
我知道.htaccess規則從上到下被解析,但如果我的URL匹配兩個規則哪一個將被使用,爲什麼?Apache htaccess規則優先
我有一個像
^(.*)$ index.php?pag=cms&title=$1
^store/(.*)$ index.php?pag=store&id=$1
基本上任何URL匹配的第一條規則又怎樣與其他的情況簡單的規則?
我知道.htaccess規則從上到下被解析,但如果我的URL匹配兩個規則哪一個將被使用,爲什麼?Apache htaccess規則優先
我有一個像
^(.*)$ index.php?pag=cms&title=$1
^store/(.*)$ index.php?pag=store&id=$1
基本上任何URL匹配的第一條規則又怎樣與其他的情況簡單的規則?
如果URL匹配兩個規則,那麼這是第一個重寫的規則。這並不是說第二條規則不會觸發。它的確如此,但它無法匹配,因爲隨後的規則觸發了它之前的規則的輸出。
如果以某種方式,您不希望重寫過程在第一個匹配規則處停止,則可以使用[L]
標誌將該規則標記爲最後一個。
^(.*)$ index.php?pag=cms&title=$1 [L]
^store/(.*)$ index.php?pag=store&id=$1 # won't fire now