Answers:
唯一的区别是,使用“专用”时,您不允许代理缓存通过它们传递的数据。最后,所有这些都归结为要发送的页面/文件中包含的数据。
例如,您的ISP在您和Internet之间可能有一个不可见的代理,即缓存网页以减少所需的带宽量并降低成本。通过使用cache-control:private,您可以指定它不应该缓存页面(但允许最终用户这样做)。如果使用cache-control:public,则表示每个人都可以缓存页面,因此代理将保留一个副本。
根据经验,如果每个人都可以访问(例如,此页面中的徽标)缓存控制:public可能更好,因为缓存它的人越多,所需的带宽就越少。如果它与所连接的用户有关(例如,此页面中的HTML包含我的用户名,那么它对其他任何人都不会有用)缓存控制:私有会更好,因为代理将缓存数据不会被其他用户请求,他们也可能会将您不希望保留的数据保留在不信任的服务器中。
而且,当然,所有不公开的内容都应具有私有缓存。否则,数据可能会存储在中间代理服务器中,只要有访问权限的人都可以访问。