【发布时间】:2015-09-10 02:56:20
【问题描述】:
我有一个到 API 服务器的 nginx 代理。 API 有时会设置缓存控制标头。如果 API 没有设置缓存控制,我希望 nginx 覆盖它。
我该怎么做?
我想我想做这样的事情,但它不起作用。
location /api {
if ($sent_http_cache_control !~* "max-age=90") {
add_header Cache-Control no-store;
add_header Cache-Control no-cache;
add_header Cache-Control private;
}
proxy_pass $apiPath;
}
【问题讨论】:
-
您能否澄清一下,如果上游没有设置标头,或者如果它不包含
max-age=90,您想覆盖标头? -
谢谢@IvanTsirulev。理想情况下,如果它不存在。但我试图匹配上游在该示例中设置的值。
标签: nginx cache-control