Nginx root和alias的区别

2.1k 服务器 发表评论

rootalias的主要区别是:

  • 使用root,实际的路径就是:root值 + location值
  • 使用alias,实际的路径就是:alias值

例如,

有一张图片,URL是:garymeng.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/;
}

对于aliaslocation值可以随便取,例如:

location /hello/ {
    alias /var/www/app/static/;
}

这样,我们访问图片的地址就是:garymeng.com/hello/a.jpg
注意:

  1. 很多文章说:alias 后面必须要用 “/” 结束,是错误的,亲测加不加/效果是一样的。
  2. alias在使用正则匹配时,必须捕捉要匹配的内容,并在指定的内容处使用
  3. alias只能位于location块中,root可以不放在location中。

发表回复

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

昵称 *