Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在try\u files nginx指令中使用两个命名位置吗?_Nginx_Location - Fatal编程技术网

我可以在try\u files nginx指令中使用两个命名位置吗?

我可以在try\u files nginx指令中使用两个命名位置吗?,nginx,location,Nginx,Location,我想使用类似于: location @a1 { ... } location @a2 { ... } location /path { try_files @a1 $uri @a2 } 在@a1位置继续使用$uri/@a2进行尝试是否可能?我应该怎么做 如果是这样,nginx将如何处理它?您不能,因为try\u files只将其最后一个参数视为命名位置-在您的示例中,nginx将查找名为@a1的文件并忽略location@a1块 对于这一点,这些参数并不是非常明确,

我想使用类似于:

location @a1 {
    ...
}

location @a2 {
    ...
}

location /path {
    try_files @a1 $uri @a2
}
在@a1位置继续使用$uri/@a2进行尝试是否可能?我应该怎么做


如果是这样,nginx将如何处理它?

您不能,因为try\u files只将其最后一个参数视为命名位置-在您的示例中,nginx将查找名为
@a1
的文件并忽略
location@a1

对于这一点,这些参数并不是非常明确,只是提到“最后一个参数也可以指向一个命名的位置”

显示了一个使用的变通方法,该方法可能对您很有用(取决于您通过进入
@a1
要执行的操作)

.

我发现:

此示例的工作原理如下:

try_files $uri @static_svr1 @static_svr2 @static_svr3
可能重复的
try_files $uri @static_svr1 @static_svr2 @static_svr3