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

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

一.nginx root指令

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

举例:

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

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

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

二.nginx alias别名配置

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的最后一个“/”对应。

相关推荐:
根据报错信息“configure: error: off_t undefined; check your library configuration”分析,未定义的类型 off_t。 off_t 类型是在头文件 unistd.h中定义的,在32位系统 编程成 long int ,64位系统则编译 …
背景信息: 2019年5月14日,监测到微软发布了紧急修复补丁,CVE-2019-0708的安全公告显示,黑客可以通过Remote Desktop Service(远程桌面服务)向目标设备发送特制的请求,可以在不需要用户干预的情况下远 …
大家都知道win10自带.net 4,在.net3.5下开发的软件无法运行,会提示需要安装.net3.5联网更新又太麻烦。 是否可以离线安装? 其实是可以的,我们只需一个命令就可以实现离线安装。前提我们要有win10的光盘 …
Windows 还以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16 位 Windows的程序访问这些文件。在cmd下输入“dir /x”即可看到短文件名的效果。 通配符”*” 和 “?”发送一个请求到iis,当I …
背景说明 MAC地址是网卡的物理地址。每块网卡都有一个唯一的MAC地址。虽然此地址没法改变,但是可以通过软件的方法欺骗系统。克隆就是再生成一个一模一样的啦,主要的用途是为了共享上网。有的运营商不是禁 …
拿起手机扫一扫即可带走我!