Nginx-location配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx-location配置相关的知识,希望对你有一定的参考价值。
nginx的location匹配规则:
语法规则: location [=|~|~*|^~] /uri/ { … }
= 普通字符精确匹配,这个优先级也是最高的
~ 波浪线表示执行一个正则匹配,区分大小写
~* 表示执行一个正则匹配,不区分大小写
^~ 表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录
!~ 表示区分大小写不匹配的正则
!~* 表示不区分大小写不匹配的正则
/ 通用匹配,任何请求都会匹配到,默认匹配
location匹配的优先级:
= 精确匹配优先级最大,如果发现精确匹配,nginx会停止搜索其他匹配
^~ 其次匹配
其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。
例如:
Nginx配置文件:(省略了前面的常规配置)
server { listen 80; server_name 127.0.0.1; #默认匹配 location / { echo "/"; } #精确匹配 location =/ { echo "=/"; } #精确匹配 location =/nginx { echo "=/nginx"; } #以gif结尾的区分大小写 location ~ \.gif$ { echo "gif"; } #以gif结尾的不区分大小写 location ~* \.gif$ { echo "GIF"; } #匹配/static/路径 location ^~ /static/ { echo "static"; } access_log logs/tomcat1_access.log; }
测试:
# curl 192.168.78.131 =/ # curl 192.168.78.131/nginx =/nginx # curl 192.168.78.131/123.gif gif # curl 192.168.78.131/123.GIF GIF # curl 192.168.78.131/static/123.gif static
本文出自 “baiyubao的博客” 博客,请务必保留此出处http://baiyubao.blog.51cto.com/2845008/1759223
以上是关于Nginx-location配置的主要内容,如果未能解决你的问题,请参考以下文章