2013-12-11 28 views
1

使用該如何匹配htaccess中<Files>的查詢字符串?

<Files foo-bar.php> 
... 
</Files> 

時但是如果你匹配的字符串就是這樣你怎麼搭配它,我可以匹配的文件就好了?

<Files foo-bar.php?foo=bar> 
... 
</Files> 
+0

你不能做到這一點。如果你能解釋爲什麼你需要這個,那麼我可以試着給你正確的答案。 – anubhava

回答

3

正如大衛指出,要解決這一種方法是使用mod_rewrite,但如果你的Apache 2.4或更高版本,可以使用If directive,這是很多清潔:

<Files foo-bar.php> 
    <If "%{QUERY_STRING} =~ /foo=bar/"> 
     ... 
    </If> 
</Files> 

注意該指令的參數實際上是一個正則表達式。它非常強大。

+1

注意:如果您有Apache 2.4.26或更高版本,您可以嵌套Ifs。儘管我仍然想知道如何一次匹配路徑和GET參數,因爲事實證明REQUEST_URI不包含參數。嵌套Ifs只是如此呃。 –

相關問題