Nginx 之 location (root / alias)区别

2018年10月30日09:39:24 发表评论 194 views

location配置

1、语法规则(按优先级)

=        表示精确匹配,优先级最高

^~      表示uri以某个常规字符串开头,用于匹配url路径(而且不对url做编码处理,例如请求/static/20%/aa,可以被规则^~ /static/ /aa 匹配到(注意是空格))

~        表示区分大小写的正则匹配

~*      表示不区分大小写的正则匹配

!~       表示区分大小写不匹配的正则

!~*     表示不区分大小写不匹配的正则

/         表示通用匹配,任何请求都会匹配到

root&alias文件路径配置

root/alias  是指定文件路径的两种方式,主要区别就是怎么解析location后面的uri

例如:

访问    http://172.20.2.10/data/www/html/index.html

root:

这个 location 相当于访问服务器上的文件路径: /var/www/html/data/www/html/index.html

Nginx 之 location (root / alias)区别

alias:

这个location相当于访问服务器上的文件目录:/var/www/html(即 alias 不会使用 location 后面配置的路径)

而且alias 指定的目录名后面一定要加上  "/"

Nginx 之 location (root / alias)区别

 

注意:

curl 命令支持 301 跳转,即 访问 301 跳转后的URL,需要加 -L 参数,如上图

  • 微信小程序
  • 关注微信小程序
  • weinxin
  • 微信公众号
  • 关注微信公众号
  • weinxin
Wangxiao

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: