location定义
location [modifier] uri {
。。。。
}
location修饰符[modifier]
= 修饰符使用精确匹配并且终止搜索。
~ 修饰符使用区分大小写的正则表达式匹配。
~* 修饰符不区分大小写的正则表达式匹配。
^~ 修饰符用来匹配普通字符,如果满足匹配,将不再进行正则表达式检测。
测试
精确匹配终止搜索 =
server {
listen 80;
server_name localhost;
location = / {
proxy_pass http://sunpy.com;
root html;
index index.html index.htm;
}
说明:由于使用“=”代表精确匹配,只会精确匹配 106.15.95.37 路径,而106.15.95.37/tomcat.css 路径不匹配,那么页面没有加载出tomcat.css。
location相同路径下的修饰符优先级
= 大于 ^~ 大于 ~* 大于 ~
常用配置(动静分离)
location = / {
proxy_pass http://tomcat_upstream:8080/index
}
location ^~ /static/ {
root /webroot/static/;
}
location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
root /webroot/res/;
}
location / {
proxy_pass http://tomcat_upstream:8080/
}
网友评论