我有一个页面nginx如下
location = /page {
proxy_pass http://localhost:82;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_hide_header Set-Cookie;
access_log off;
add_header Cache-Control public;
add_header X-Cache-Status $upstream_cache_status
proxy_cache page;
proxy_cache_key backend$request_uri;
proxy_cache_valid 200 302 100d;
proxy_cache_valid 404 1m;
proxy_cache_use_stale error timeout invalid_header;
}
缓存设置如下
proxy_cache_path /tmp/nginx/cache levels=1:2 keys_zone=page:10m inactive=7d max_size=50m;
但此页面总是返回未命中
可能出了什么问题?
答案1
如果你的后端响应有一个 Set-Cookie 标头,你需要proxy_ignore_headers设置 Cookie;而不是 proxy_hide_header 设置 Cookie;