【Nginx】location中的root、proxy_pass和alias
前言
root、proxy_pass和alias都是用来配置Nginx服务器上的URL重写的指令
1、指令
1.1 root指令
root:用于指定文件系统中某个目录作为请求的根目录,Nginx会在该目录下寻找请求的文件。例如:
location /images/ {
root /var/www;
}
上述配置使得访问/images/目录下的资源时,Nginx会到/var/www/images/目录下查找。
最后请求的路径:root指定的URL/var/www + location上的URL/images/
1.2 alias指令
alias:用于将请求映射到另一个目录或文件上(用于将请求的URL路径与文件系统路径进行映射),常用于处理静态资源的请求,这个指令的功能类似于root,只不过可以指定不同的路径。例如:
location /uploads/ {
alias /var/www/uploads/;
}
上述配置使得访问/uploads/目录下的资源时,Nginx会在/var/www/uploads/目录下查找。注意,使用alias指令时,URI路径会被转换成文件系统路径,例如/uploads/test.jpg会被映射到/var/www/uploads/test.jpg。
最后请求的路径:alias指定的静态资源URL/var/www/uploads/
1.3 proxy_pass指令
proxy_pass :用于配置反向代理,将客户端发送的请求转发给指定的后端服务器,并返回后端服务器的响应结果。例如:
location /api/ {
proxy_pass http://backend_server/;
}
上述配置使得访问/api/目录下的请求会被转发到http://backend_server/服务器上处理。
最后请求的路径:proxy_pass指定的后端服务URLhttp://backend_server/
2、总结
root适用于指定请求的根目录,
最后请求的路径:root指定的URL + location上的URL
alias则适用于将URL路径映射到文件系统路径,方便访问资源
最后请求的路径:alias指定的静态资源URL
proxy_pass适用于配置反向代理,让Nginx将请求转发给后端服务器。
最后请求的路径:proxy_pass指定的后端服务URL
————————————————
版权声明:本文为CSDN博主「Kevinllli」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42516475/article/details/131111279
浙公网安备 33010602011771号