2017-06-08 52 views
0

我有這個網址:如何在RewriteRules中使問號成爲可選項?

www.example.com/chk-error/errcat=5&errcd=514&id=12&in=gt5 

,我可以抓住用後續重寫規則:

RewriteRule ^chk-error/(.*) chk_err.php?error=$1 [L] 

現在我要抓住這個網址:

www.example.com/chk-error/?errcat=5&errcd=514&id=12&in=gt5 

這幾乎是相同的但只有問號「chk-error/」。

我想使它可選。我的意思是,我想要一個RewriteRule來抓取兩個網址,或者不帶問號

回答

1

你的第二個url包含一個Querystring。搶查詢字符串的部分,你需要來匹配%{QUERY_STRING}變量,試試這個規則來處理你的第二個網址

RewriteCond %{QUERY_STRING} (.+) 
RewriteRule ^chk-error/$ chk-error.php?error=%1 [L] 
+0

此外,改變你的第一條規則的捕獲組**(*)**爲* *(。+)**強制uri後至少有一個字符。 – starkeen

相關問題