问题描述
我使用 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 (将#修改为@)