首页 > 其他 > 详细

nginx location配置详细解释

时间:2019-04-01 11:47:42      阅读:138      评论:0      收藏:0      [点我收藏+]

语法规则

location [=|~|~*|^~] /uri/ { … }

  • = 开头表示精确匹配
  • ^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。以xx开头
  • ~ 开头表示区分大小写的正则匹配 以xx结尾
  • ~* 开头表示不区分大小写的正则匹配 以xx结尾
  • !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则
  • / 通用匹配,任何请求都会匹配到。

匹配顺序

首先精确匹配 = -> 其次以xx开头匹配^~ -> 然后是按文件中顺序的正则匹配 -> 最后是交给 / 通用匹配。
当有匹配成功时候,停止匹配,按当前匹配规则处理请求。

常用的location匹配规则

  • 配置指定文件名
# icon
location = /favicon.ico {
   root images; # 文件在images目录中
   expires 7d;  # 缓存7天
}
  • 根据文件名模糊匹配
# 百度统一验证
location ~* ^/baidu_verify_[\w]+.html$ {
   root  html;
}
  • 路径部分匹配
# 静态图片
location ^~ /cdn-images/ {
   alias images/;  # 注意使用的alias及后面的/
   expires 7d;
}
  • 动静分离
# 静态文件
location ~* \.(html|jpg|png)$ {
    root   cloud-web;
    index  index.html index.htm;
}  
# 动态请求
location ~* /hbm/  {
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass   http://10.0.1.210:8769;
}

nginx location配置详细解释

原文:https://www.cnblogs.com/Candies/p/10635401.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!