我想知道是否有更好的方法来定义nginx中的资产路径。例如,我希望nginx在子文件夹中提供资源。现在,我使用这种对我来说看起来不太干的技术。
location ^~ /assets/ {
gzip_static on;
expires max;
add_header Cache-Control public;
}
location ^~ /assets/downloads {
gzip_static on;
expires max;
add_header Cache-Control public;
}
您能否为资产文件夹中的文件夹提出更好的建议?提前谢谢。
答案 0 :(得分:3)
您的配置几乎是正确的(针对您尝试实现的目标)。由于我没有完整的配置,我猜测解决方案:
location ^~ /assets/ {
alias /absolute/path/to/assets/;
gzip_static on;
expires max;
add_header Cache-Control public;
}
注意alias
指令(以及绝对路径上的尾部斜杠)。这告诉NGINX获取URI并递归资产目录(在子文件夹中搜索)。它与提供内容时使用root
和try_files
类似。对于root
和alias
之间的差异,请参阅此link。