root和alias的主要区别是:
使用root,实际的路径就是:root值 + location值。
使用alias,实际的路径就是:alias值。
例如,
有一张图片,URL是:www.yigx.com/static/a.jpg
它在服务器的路径是:/var/www/app/static/a.jpg
那么用root的配置是:
location /static/ {
root /var/www/app/;
}
用alias的配置就是:
location /static/ {
alias /var/www/app/static/;
}
对于alias,location值可以随便取,例如:
location /hello/ {
alias /var/www/app/static/;
}
这样,我们访问图片的地址就是:www.yigx.com/hello/a.jpg
注意:
很多文章说:alias 后面必须要用 “/” 结束,是错误的,亲测加不加/效果是一样的。
alias在使用正则匹配时,必须捕捉要匹配的内容,并在指定的内容处使用。
alias只能位于location块中,root可以不放在location中。
网友评论