3
要带有特定扩展名的文件相匹配,我们可以利用这一点:如何匹配nginx中扩展少的文件的位置?
位置〜*(PHP | JSP | CGI | PL | PY)$ {}
和预期的所有作品...。?
但是,如果我们有没有任何扩展名的文件,我怎么能匹配他们在'位置'块?!
要带有特定扩展名的文件相匹配,我们可以利用这一点:如何匹配nginx中扩展少的文件的位置?
位置〜*(PHP | JSP | CGI | PL | PY)$ {}
和预期的所有作品...。?
但是,如果我们有没有任何扩展名的文件,我怎么能匹配他们在'位置'块?!
.*.(php|jsp|cgi|pl|py)?$
匹配任何数目的后跟另一个字符(.
)和零或所列扩展(...)?
之一occurence字符(.*
)的正则表达式。由于?
,此正则表达式应该已经匹配没有扩展名的文件,因为您可以验证here。澄清评论
后
更新您可以使用正则表达式[^.]+(?!(php|jsp|cgi|pl|py))$
这意味着匹配多个字符不得为周期,不跟上市推广。
月2日更新
没有语法不匹配正则表达式。相反, 匹配目标正则表达式,并分配一个空块
所以,你想每一个具有扩展名的文件相匹配,并指定空块。它类似于你原来的正则表达式,但没有?
,你最好在扩展之前逃离点,否则它意味着任何字符。
location ~ .*\..+$ {}
你好,也许我还不够清楚。 我想要的是匹配现在只'扩展少文件! –
@MarkWurkz我编辑了答案。 – halex
如果我想要一些与众不同的东西...忘了这个例子,我提供了'扩展',我想忽略'任何文件'有扩展名,只接受扩展名较少的文件,我怎么能做到这一点? –