对不起,我是nginx的新手,如果问题不清楚,请向我指出一些方向。
我在xyz.jpg
中有一个图片Disk-1
,在abc.jpg
中有一个图片Disk-2
,当我调用url:../image/xyz.jpg
时,会显示xyz.jpg (Disk-1)
通过在我的nginx的文件中使用alias
。问题是:
有什么方法可以呼叫../image/abc.jpg
,abc.jpg (Disk-2)
会出现吗?
location /image/ {
expires max;
add_header Pragma public;
add_header Cache-Control "public";
alias /image_data/;
}
编辑:我使用了try_files
,但是没有用
location @image2 {
alias /image_data_2/;
try_files $uri $uri/ =404
}
location /image/ {
expires max;
add_header Pragma public;
add_header Cache-Control "public";
alias /image_data/;
try_files $uri $uri/ @image2;
}
答案 0 :(得分:1)
因此,您要检查两个文件夹中的图像,以匹配以/image/
开头的URI。
您可以使用正则表达式 location
块捕获前缀后面的URI部分,从而避免使用alias
指令。正则表达式的位置按顺序求值,因此该块在server
块内的位置很重要。有关详细信息,请参见this document。
在location
块的保护下,将root
设置为公共父目录(在本例中为/
),并使用{{1}构造文件的路径。 }。
例如:
try_files
有关详细信息,请参见this document。