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

相关推荐:
PHP容易暴露的版本号在什么地方呢?其实也是在HTTP头,以类似X-Powered-By: PHP/5.4.27这种形式存在,可能会想到会不会是Nginx问题,而去到Nginx里面找相关配置,其实这个是在PHP的配置文件php.ini里改动, …
在离线的环境下安装支持包,就需要下载离线包进行手工安装,此时如何快速的安装呢? deb是debian linux类型的安装格式,跟red hat的rpm非常相似,最基本的安装命令是: dpkg -i xx.deb dpkg 是Debian Packa …
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它 …
webview中开启JavaScript、Plugin插件,文件访问等功能,可能会存在文件篡改、信息泄漏、远程代码执行等安全漏洞。 1)在android默认关闭了javascript,如果不是必要,请不要打开javascript 2)禁用webview …
许多人喜欢在重装系统后使用备份的激活文件来还原,当然这是一种很好的方式,但是有时候不适当地操作将导致致命的问题,这便是其中一个。 替换系统激活备份文件后,计算机属性提示产品ID不可用,无法启动 S …
拿起手机扫一扫即可带走我!