Nginx“位置~。”与“位置〜* \。”
Posted
技术标签:
【中文标题】Nginx“位置~。”与“位置〜* \\。”【英文标题】:Nginx "location ~ ." vs "location ~* \."Nginx“位置~。”与“位置〜* \。” 【发布时间】:2017-06-06 10:03:48 【问题描述】:以下3个指令有区别吗?
location ~* \.(png)$
expires max;
log_not_found off;
location ~ \.(png)$
expires max;
log_not_found off;
location ~ .(png)$
expires max;
log_not_found off;
提前感谢您抽出宝贵的时间。
【问题讨论】:
【参考方案1】:这是正则表达式位置块的三种形式。详情请见this document。
~*
运算符使测试用例不敏感。
.
字符在正则表达式中具有特殊含义:匹配任何单个字符(很像 ?
在 shell glob 中所做的)。
\.
序列(转义点)匹配文字点字符。这意味着第三个示例可能不是您想要的(假设您尝试匹配以 .png
结尾的 URI)。
有关正则表达式的更多信息,请参阅this document。
【讨论】:
非常感谢“特工史密斯”!以上是关于Nginx“位置~。”与“位置〜* \。”的主要内容,如果未能解决你的问题,请参考以下文章