我看起来很高兴,并没有找到这样的实现,我想知道我正在尝试的是否可能。我有3个相对路径来提供静态内容:
"$f"
3个不同的根本身是静态的,但来自/ static on down的内容只是半静态的(根据提供的确切文件可能有点不同,可能存在于一个路径而不存在于另一个路径中)。例如
"$f"
以下是我想做的事情。基本上,如果" / static"请求内容我想检查与path1关联的相对路径,如果没有找到,则检查与path2关联的相对路径,如果未找到,则检查与path3关联的相对路径。这看起来相当简单,但我没有找到任何能够概述如何做到这一点的例子。我可以将3个不同的根设置为变量:
rm
或者可能如下所述,因为它只需要/ static content:
Path1: /usr/local/www/style1/static/...
Path2: /usr/local/www/style2/static/...
Path3: /usr/local/www/style3/static/...
或者我试图做什么甚至可以完成?如果我不能用3个根来完成它可以用2个根完成,而不将其中一个定义为整体拱形基根。如果有可能做到这一点并远离正常的表达式,那就更好了 - 但如果需要,则需要这样做。
答案 0 :(得分:3)
您可以使用公共根并尝试try_files
语句中的三个目录:
location /static {
root /usr/local/www;
try_files /style1$uri /style2$uri /style3$uri =404;
}