Thi*_*man 4 caching reverse-proxy nginx cache-control
在nginx中使用add_header指令时,标头将添加到来自源服务器的响应中.
假设源服务器返回cache-control public,max-age = 60.但是在nginx反向代理位置,您可以设置如下:
add_header cache-control public,max-age = 10
这究竟是做什么的?我可以想到两种不同的场景:
1)Nginx尊重来自源服务器的缓存控制头,并将内容存储在其缓存中,有效期为60秒.然后使用覆盖的标头传递响应,导致客户端将资源存储在其缓存中,到期时间为10秒.
要么..
2)Nginx首先覆盖响应头,然后解释它们.它以10秒的有效期存储资源,并将响应传递给客户端,客户端也将其缓存,有效期为10秒.
Nginx在原始服务器之前添加其标题,因此您将拥有:
cache-control: public, max-age=10
cache-control: public, max-age=60
Run Code Online (Sandbox Code Playgroud)
并且origin头将替换nginx头.
解决方案?使用具有模块more_set_headers和more_clear_headers的nginx v1.4.3来替换或清除源文件中的标头.
您可以从此处下载该模块.
这里有如何下载nginx 1.4.3以及如何安装它.
这里如何使用指令.
如果您想完全丢弃原始服务器标头,您可以添加:
proxy_hide_header 'Cache-Control';
add_header 'Cache-Control' "public, max-age=10";
Run Code Online (Sandbox Code Playgroud)
这将删除原始标头并添加您自己的标头。
| 归档时间: |
|
| 查看次数: |
17499 次 |
| 最近记录: |