Nginx"位置〜。" vs" location~ * \。"

时间:2017-01-21 13:57:05

标签: php linux nginx server nginx-location

以下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 个答案:

答案 0 :(得分:3)

这是正则表达式位置块的三种形式。有关详细信息,请参阅this document

~*运算符使测试用例不敏感。

.字符在正则表达式中具有特殊含义:匹配任何单个字符(很像?在shell globs中的作用)。

\.序列(转义点)与文字点字符匹配。这意味着第三个示例可能不是您想要的(假设您尝试匹配以.png结尾的URI)。

有关正则表达式的更多信息,请参阅this document