2013-10-29 87 views
1

到目前爲止,我一直在使用的Apache 2.4 mod_rewrite的和的RewriteCond%{QUERY_STRING}空

RewriteCond %{QUERY_STRING} ="" 

RewriteCond %{QUERY_STRING} !.*=.* 

爲條件,以檢查是應用重寫規則之前,我查詢字符串空。從Apache 2.4開始,這些指令不再起作用。

例如,對於我的http://test.loc/地址mod_rewrite的日誌輸出如下:使用第二指令

RewriteCond: input='ver=1.0' pattern='!.*=.*' => not-matched, referer: http://test.loc/ 

任何幫助理解

RewriteCond: input='ver=1.0' pattern='=""' => not-matched, referer: http://test.loc/ 

,或者當。

回答

1

嘗試對正則表達式:

RewriteCond %{QUERY_STRING} ^(input=[^&]*)?$ 
+0

謝謝,但記錄的結果是:的RewriteCond:輸入= '版本= 3.7' 模式= '^ $'=>不匹配,引用者:HTTP://測試。 loc/ – Marko

+0

'input ='ver = 3.7''從哪裏來? – anubhava

+0

它只是從error.log與LogLevel mod_rewrite.c複製/粘貼:trace8 – Marko