我在这里遇到了一些使用这种语法的问题和答案:
location @default {
# ...
}
location /somewhere {
try_files $uri @default;
}
Run Code Online (Sandbox Code Playgroud)
我在谷歌上进行了高低搜索,但似乎找不到任何相关文档。它是什么意思,它的一些实际用途是什么?它是某种变量声明和赋值吗?对不起,新手问题。
Les*_*ill 34
在您在问题中引用的示例中:
location @default {
# ...
}
location /somewhere {
try_files $uri @default;
}
Run Code Online (Sandbox Code Playgroud)
如果在http://your-domain/somewhere收到传入请求,则该位置与 /somewhere 匹配,并且它会按顺序在两个位置尝试以找到响应,如 try_files 指令指定的那样,以第一次成功尝试进行响应。
location @default指令指定。甲named_location永远不会匹配传入的请求,并用于通过参照指定其他位置指令的响应。通过这种方式,可以避免if语句(如果文件存在,则使用它,否则按照 location @default 指令中的规范进行响应)。因此它可以用作 if 条件的简写。“如果”语句绝对是 nginx 作者“不赞成”的(如果是邪恶的),因为它们有一些限制并且可能不会给出预期的结果。
| 归档时间: |
|
| 查看次数: |
18144 次 |
| 最近记录: |