NGINX alias
时间: 2024-02-11 12:57:53 浏览: 91
NGINX中的alias指令和root指令都可以用于指定访问资源的路径,但它们之间有一些区别。root指令用于设置请求的根目录,而alias指令用于更改location的URI路径。具体来说:
1. 使用root指令:
当使用root指令时,location路径将会被附加到root路径后面,然后再访问资源。例如,在/usr/local/nginx/html目录下创建一个images目录,并放入一张图片mv.png。使用以下配置:
```
location /images {
root /usr/local/nginx/html;
}
```*** 使用alias指令:
当使用alias指令时,location路径将会被替换为alias路径。例如,***使用以下配置:
```
location /images {
alias /usr/local/nginx/html;
}
```
此时,再次访问上述地址,页面会出现404的错误,查看错误日志会发现是因为地址不对。这是因为alias路径替换了location路径,需要将alias后面的路径改为:
```
location /images {
alias /usr/local/nginx/html/images;
}
```*** 注意事项:
如果location路径以斜杠(/)结尾,则alias路径也必须以斜杠(/)结尾,而root指令没有这个要求。例如,将上述配置修改为:
```
location /images/ {
alias /usr/local/nginx/html/images;
}
```
这样的配置会导致访问出现问题,查看错误日志还会发现路径不对。因此,需要将alias后面的路径加上斜杠(/):
```
location /images/ {
alias /usr/local/nginx/html/images/;
}
```
阅读全文