Nginx——location常见配置指令,alias、root、proxy_pass

今天药忘吃喽~ 2022-05-17 06:49 341阅读 0赞

1、【alias】——别名配置,用于访问文件系统,在匹配到location配置的URL路径后,指向【alias】配置的路径。如:

  1. location /test/
  2. {
  3. alias/first/second/img/;
  4. }

即:请求/test/1.jpg(省略了协议与域名),将会返回文件/first/second/img/1.jpg。

2、【root】——根路径配置,用于访问文件系统,在匹配到location配置的URL路径后,指向【root】配置的路径,并把location配置路径附加到其后。如:

  1. location /test/
  2. {
  3. root /first/second/img/;
  4. }

即:请求/test/1.jpg(省略了协议与域名),将会返回文件/first/second/img/test/1.jpg,相较于alias,使用root会把/test/附加到根目录之后。

3、【proxy_pass】——反向代理配置,用于代理请求,适用于前后端负载分离或多台机器、服务器负载分离的场景,在匹配到location配置的URL路径后,转发请求到【proxy_pass】配置的URL,是否会附加location配置路径与【proxy_pass】配置的路径后是否有”/“有关,有”/“则不附加,如:

  1. location /test/
  2. {
  3. proxy_pass http://127.0.0.1:8080/;
  4. }

即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/1.jpg(未附加/test/路径)。

  1. location /test/
  2. {
  3. proxy_pass http://127.0.0.1:8080;
  4. }

即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/test/1.jpg(附加/test/路径)。

  1. location/test/
  2. {
  3. proxy_pass http://127.0.0.1:8080/img;
  4. }

即:请求/test/1.jpg(省略了协议与域名),将会被nginx转发请求到http://127.0.0.1:8080/img1.jpg(未附加/test/路径,但附加了/test/之后的路径)。

发表评论

表情:
评论列表 (有 0 条评论,341人围观)

还没有评论,来说两句吧...

相关阅读

    相关 nginxlocation优先级

    nginx 反向代理一个server下配置多个location域名问题 当你设置两个location/时,当然只会匹配第一个了。你的意思是不是要配置两个域名? serv

    相关 Vue--常见指令

    vue实例的作用范围:在el选择的元素内部都可以,使用el进行挂载 选择器:除了id选择器以外,还有class选择器,标签选择器 vue取消了对dom元素的操作,通过t