我希望在 Nginx 上设置缓存,以便某些文件的缓存不会持续超过 2 小时,同时让缓存每天早上 6:15 过期。我遇到的问题是在同一位置块中设置这两个时间限制。
到目前为止我有这个
uwsgi_cache_path /data/nginx_cache levels=1:2 keys_zone=my_cache:10m max_size=10g;
.
.
.
location ~* /my/path/and/image.*\.png$ {
expires 7200;
include uwsgi_params;
uwsgi_pass unix:/tmp/my_project_name.sock;
uwsgi_cache_key $request_uri;
uwsgi_cache my_cache;
add_header Pragma public;
add_header Cache-Control "public";
add_header X-Cache-Status $upstream_cache_status;
}
我看过http://nginx.org/en/docs/http/ngx_http_headers_module.html
它将缓存设置为过期,expires @15h30m;
所以我尝试设置
expires 7200, @6h15m;
但该语法似乎不被接受。
注意:此外,我还需要让用户浏览器的缓存每 30 分钟左右过期一次。