root 与 alias 主要区别在于 Nginx 如何解释 location 后面的 URI,这会使两者分别以不同的方式将请求映射到服务器文件上
root 的处理结果是:root 路径 + location 路径
alias 的处理结果是:使用 alias 路径替换 location 路径
alias 是一个目录别名的定义,root 则是最上层目录的定义
还有一个重要的区别是 alias 后面要用 /
结束,否则会找不到文件,而 root 则可有可无
root 实例
location /images/ {
root "/app/webroot"
}
访问:http://www.test.com/images/a.jpg 相当于文件系统路径 /app/webroot/images/a.jpg
alias 实例
location /images/ {
alias "/www/pictures/";
}
访问:http://www.test.com/images/a.jpg 相当于文件系统路径 /www/pictures/a.jpg
作者 Github : tojohnonly , 博客 : EnskDeCode