Nginx的location配置中root与alias的区别

一直以来对nginx中root、alias指令的区别没有搞清楚,今天特别查找了一些资料,同时通过实例配置nginx的方法来对比这两个指令。

一.nginx root指令

root指的是根目录,可以简单地理解为父目录。

举例:

1
location /a/ { ...; root /www/;...}

当我们访问xxx/a/时,就是/www/a/下的文件了,若目录b是a的子目录,我们访问xxx/a/b时,就是/www/a/b/下的文件了。

简单地理解就是root时,访问时自动带上请求中的相对目录。

二.nginx alias别名配置

1
location /b/ {...; alias /www/a/b/;...}

从配置上我们可以看出,alias所指定的目录是必须指定真实的目录的,同时b目录必须指定/b/,后面要带/(root可以忽略)。

总结下就是:

1. Root是Alias的父目录,Alias是子目录,且有/的强制区别;

2. Root及alias指令主要是目录对应关系同location不同;

3. Root的最后一个“/”要同location的第一个“/”对应,其他目录结构同location中剩余相同;

4. Alias的最后一个“/”要同location的最后一个“/”对应。

未经允许不得转载:电脑派 » Nginx的location配置中root与alias的区别

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. 灵感创作原本只是自己和闺蜜两个人的世界,突然闯入了一个她的发小,我不知道这是什么感受,我只知道听她在电话里讲她和发小的事情我挂掉了电话,泪流满面,我不愿意友情将就,如果我做不了最好的闺蜜,那么就给她让位,也许本来我就是第三者,再见 http://www.1024xyz.com回复