nginx中root与alias关键字的区别
前言
近段时间秋招上岸了,于是每天疯狂补各种分布式基础,每天都在痛苦与快乐中度过。
在学习 nginx 的时候,遇到配置上的问题:root 与 alias 的区别,卡了大概三个小时,记录下来警醒自己不要再犯了。
正文
在使用 “/” 进行配置时,两者没有区别,一样都是在 root 或者 alias 指定的路径寻找文件,所以以下的过程与结果都跟此无关。
- 测试用例的构建
location /static2 {
root /static;
}location /static1 {
alias /static;
}
- 图片示例及存放位置
2.jpeg : /static/
5.jpeg : /static/static2/
文章图片
image
- 启动 nginx 并输入 url
http://192.168.99.100:8091/static1/2.jpeg
http://192.168.99.100:8091/static2/5.jpeg
- 结果
文章图片
image
- 结果分析
从访问 url,映射关系 relation 以及文件位置 location 综合来看,可以得出以下规律:
2.jpeg : alias = location !=url
5.jpeg : root + location = url
- 结论
个人认为,alias 起到一个文件路径重定向的功能,能有效隐藏文件真实路径。相对来说, root 更像在指定 root 文件夹中寻找文件,文件路径树容易被猜测导致安全问题的发生。
转载请注明出处:https://cartoonyu.github.io/cartoon-blog/post/nginx/nginx中root与alias关键字的区别/
推荐阅读
- 热闹中的孤独
- Shell-Bash变量与运算符
- JS中的各种宽高度定义及其应用
- 2021-02-17|2021-02-17 小儿按摩膻中穴-舒缓咳嗽
- 深入理解Go之generate
- 异地恋中,逐渐适应一个人到底意味着什么()
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- “成长”读书社群招募
- 2020-04-07vue中Axios的封装和API接口的管理