如何解决不同的proxy_cache_valid取决于nginx的request_uri
我使用 Nginx 作为 googleapis.com 的缓存。目前所有响应都缓存了 5m:
proxy_cache_path /var/cache/Nginx/xxx_cache keys_zone=xxx_cache:10m;
server {
location ~ /blog/ {
proxy_pass https://www.googleapis.com/blogger/v3/blogs/;
proxy_cache xxx_cache;
proxy_cache_lock on;
proxy_cache_valid 5m;
}
我想根据 request_uri 更改此间隔。通过 $proxy_cache_valid
指令定义 map
变量并将其用于 proxy_cache_valid
失败并显示 invalid time value "$proxy_cache_valid" in ...
。
map $request_uri $proxy_cache_valid {
default 5m;
~^/blog/[0-9]+/posts/[0-9]+ 1h;
}
proxy_cache_path /var/cache/Nginx/xxx_cache keys_zone=xxx_cache:10m;
server {
location ~ /blog/ {
proxy_pass https://www.googleapis.com/blogger/v3/blogs/;
proxy_cache xxx_cache;
proxy_cache_lock on;
proxy_cache_valid $proxy_cache_valid;
}
如何在 Nginx (Nginx version: Nginx/1.16.1
) 中实现这一点?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。