前端之家收集整理的这篇文章主要介绍了
用于缓存图像的Nginx正则表达式规则覆盖根位置块,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的Nginx设置包含以下位置规则:
location ~* \.(jpg|jpeg|png|gif|ico|css|js|pdf)${
expires 7d;
}
location /data/ {
root /mnt/data;
}
问题是,当我尝试访问/ data /文件夹中的以下文件之一(jpg | jpeg | png | gif | ico | css | js | pdf)时,我收到404 Not Found错误,导致第一个位置规则覆盖第二.我试着这样做:
location ~* /data/.*\.jpg${
root /mnt/data;
expires 7d;
}
但这似乎不起作用.在这种情况下,你能帮我解决一下我可用的解决方案吗?
解决方案是:
#1规则重复
location ~* \.(jpg|jpeg|png|gif|ico|css|js|pdf)${
expires 7d;
}
location /data/ {
root /mnt/data;
location ~* \.(jpg|jpeg|png|gif|ico|css|js|pdf)${
expires 7d;
}
}
#2符号链接
您可以创建符号链接:$document_root / data – >的/ mnt /数据.