Http Nginx-为特定位置发送静态文件
我正在使用nginx作为代理(使用Http Nginx-为特定位置发送静态文件,http,nginx,nginx-location,Http,Nginx,Nginx Location,我正在使用nginx作为代理(使用位置/),并尝试在另一个位置块下为热链接保护重定向提供静态映像。以下是我用来尝试为形象服务的内容。我已将root指令移到location块之外,出于某种原因,这是nginx构建正确路径所必需的 location = /hotlink.png { autoindex off; try_files hotlink.png hotlink.png } 但是,当我查看日志时,它仍然通过将URI附加到根路径来查找index.html:{root}/hot
位置/
),并尝试在另一个位置块下为热链接保护重定向提供静态映像。以下是我用来尝试为形象服务的内容。我已将root
指令移到location
块之外,出于某种原因,这是nginx构建正确路径所必需的
location = /hotlink.png {
autoindex off;
try_files hotlink.png hotlink.png
}
但是,当我查看日志时,它仍然通过将URI附加到根路径来查找index.html:{root}/hotlink.png/index.html
。
我只是希望它只在匹配了/hotlink.png时发送文件{root}/hotlink.png,就这样
为什么它仍然在寻找一个关闭了
自动索引的索引?如何解决这个问题,或者是否有更好的方法来处理这种情况?在换档后,回到这一点,我只需将自动索引关闭
指令移到位置块之外,就可以使它正常工作。它可与或不带try\u files
指令的一起使用。为了简洁和避免冗余,我把它删掉了
root /path/to/static/files;
autoindex off;
location / {
# proxy
}
location = /hotlink.png {}
删除try\u files
语句。@RichardSmith这是我最初的想法。如果没有try_files
,它似乎会完全跳过块,并返回位置/
blockIshotlink.png
一个真实的文件?是的,它是一个真实的文件