关于两个nginx经常忽略的细节

1.root 和alias区别

在日常的工作中,nginx server下location经常要指定到其他目录,如图片,但是这里就经常发现我是需要用root还是alias来指定路径,这里就分析下

    1:root不会丢弃location后面配置的路径,而alias会丢弃,把当前匹配到的目录指向到指定的录
    2:使用alias时,目录名后面一定要加”/”
    3:alias只能位于location块中
    建议:location 非/的配置alias

location / 下配置root

    范例:

root:

这样配置的结果就是当客户端请求 /request_path/image/cat.png 的时候, Nginx把请求映射为/local_path/image/request_path/image/cat.png
alias:

这时候,当客户端请求 /request_path/image/cat.png 的时候, Nginx把请求映射为/local_path/image/cat.png

2.nginx proxy_pass后的url加不加/的区别

    第一种:proxy_pass后缀不加斜杠

结果:如果访问url   http://server/abc/test.jsp,则被nginx代理后,请求路径会便问http://proxy_pass/abc/test.jsp,将abc/ 作为根路径,请求abc/路径下的资源

    第二种:proxy_pass后缀加斜杠

如果访问url  http://server/abc/test.jsp,则被nginx代理后,请求路径会变为 http://proxy_pass/test.jsp,直接访问server的根资源

Add a Comment

邮箱地址不会被公开。 必填项已用*标注