我使用Squid 2.7.STABLE9,我从源代码编译。
我对no-cache理解是,在提供资源的caching副本之前,caching必须对原始服务器进行重新validation,并且这将通过If-Modified-Since标头进行。
我对s-maxage理解是,一个共享的caching/代理应该考虑资源在指定的秒数内保持新鲜。
我的期望是, Cache-Control: no-cache, s-maxage=300应该触发Squid在5分钟内将资源新鲜考虑在内,并且在提供caching版本之前,应该使用源服务器重新validation。
我是否正确理解这些标题的用法? 如果是这样,我应该期望这种行为Squidconfiguration为反向代理时执行此行为?
在您的示例中,no-cache条目不指定字段名称,因此本节适用:
no-cache如果no-cache指令没有指定一个字段名,那么一个caching绝不能使用该响应来满足后续的请求,而不需要对源服务器进行成功的重新validation。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.1