nginx里alias,root,try_files笔记
先说结果:try_files 一共有三个值$uri, $uri/ /index.html,前两个值取决于alias,最后一个值和alias无关,取决于root, 即如果最后一个值/index.html,
则实际地址是root/index.html,不是alias/index.html,和alias一点关系没有,还有root, alias可以说不是一个东西,
root 中文意思根路径,限定整个请求的范围,alias中文意思是别名,替换请求
下面具体几个示例:
上图配置案例中,如果浏览器输入:localhost:38080/c2000/app,则变成/c2000下的alias /home/web/fhgl/master/app, 如果这个文件目录都不存在,
则返回根目录+ /master/index.html, 即/home/web/fhgl/master/index.html
alias一般用于改写请求链接,下面举个前端最常见例子
上图中,child_bigscreen是前端项目里配置的publicPath, 命中location 则实际这个http请求路径是html/child_bigscreen/js/app.ccda1527.js
如果这个目录下没有这个文件,则最后走try_files里的 /index.html,此时alias等于没有,用root+/index.html