如何设置 Nginx 忽略 Pragma: no-cache

use*_*344 8 nginx cache

我正在为缓存代理服务器设置 Nginx 服务器。

我注意到当请求此标头时缓存不起作用:

Pragma: no-cache
Run Code Online (Sandbox Code Playgroud)

没有这个头,缓存工作正常。

我可以让 Nginx 忽略来自客户端的这个头字段,并缓存结果。因为我不能轻易更改客户端代码(需要重新安装大量设备)。

小智 5

您可以专门指示 nginx 忽略标头

proxy_ignore_headers X-Accel-Expires;
proxy_ignore_headers Expires;
proxy_ignore_headers Cache-Control;
Run Code Online (Sandbox Code Playgroud)

使用这些指令,nginx 代理实例将忽略上游服务器发送的标头并为客户端设置自己的标头(取决于您在代理响应配置中指定的内容)。

  • 这根本没有回答这个问题。OP 询问如何忽略请求 Pragma 标头而不是上游响应标头。 (3认同)
  • 根据 https://www.nginx.com/blog/nginx-caching-guide/ nginx 默认不支持 `Pragma: no-cache` 标头。 (2认同)