• Nginx里的root/index/alias/proxy_pass的意思


    1.【alias】

    别名配置,用于访问文件系统,在匹配到location配置的URL路径后,指向【alias】配置的路径。如:(注意alias配置最后一定要有/,而root可以没有)

    location /test/ 
    { 
    alias /home/sftp/img/; 
    }

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

    2.【root】

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

    location /test/ 
    { 
    root /home/sftp/img/;
    }

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

    3.【proxy_pass】

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

    location /test/ 
    { 
    proxy_pass http://127.0.0.1:8080/; 
    }

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

    location /test/ 
    { 
    proxy_pass http://127.0.0.1:8080; 
    }

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

    location /test/ 
    { 
    proxy_pass http://127.0.0.1:8080/img; 
    }

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

     4.【index】,一般有这样的配置:

    location / {
      root html;
      index index.html index.htm;
    }

    注意,这里的root后面没有跟绝对路径,即前面没有/xxx这种写法,所以它指的是nginx根目录下的html;

    即假设请求http://localhost/test/uu.html匹配的是这个规则,那么nginx会从根据是root是得知是访问文件系统(而非访问其他网络,可以理解为此时的nginx是正向代理),然后判断html前面没有/或者是如C:这样的用于描述绝对路径的写法,说明这个路径是相对于nginx根目录下的html目录,所以最终是从html里找test目录下的uu.html文件返回;

    这里的index是当比如请求http://localhost时默认其实在nginx里是http://localhost/index(但是如果客户端这么写则nginx会认为是找绝对文件index所以会提示找不到),所以这里的index其实就是指示当是index时优先从niginx目录下的html目录里找index.html返回,没有才找index.htm返回;

    不过要注意看nginx是否启动了多个,自己之前测试的时候nginx启动了多个导致reload的不是正在工作的,差点还以为这个配置不是这样的;


    参考:https://blog.csdn.net/zhangliangzi/article/details/78257593

  • 相关阅读:
    [bbk5153]第15集 Chapter 06 Working with Composite Data Types(Collection)
    [bbk5128]第12集 Chapter 06 Working with Composite Data Types 014998(Record)
    [bbk4998]第11集 Chapter 06 Working with Composite Data Types 004998(Record)
    [bbk4979]第06集 Chapter 04 Interacting with Oracle Database Server:SQL Statements in PL/SQL Programs(01)
    PHP与MYSQL事务处理
    Selenium封装
    pytest 失败重跑截图
    python 编码规范起源:PEP8 编码规范中文版
    pytest setup和teardown初始化
    谷歌浏览器linux,windows下载
  • 原文地址:https://www.cnblogs.com/silentdoer/p/11264251.html
Copyright © 2020-2023  润新知