我们的网络包含越来越多的 iOS 设备,所有这些设备的配置都非常相似。所有 Internet 访问都通过透明代理进行。
我们发现 iOS 更新和一些免费应用程序在代理上缓存良好,但任何付费应用程序都无法正确缓存(因为它们似乎已加密到 Apple ID(?))。
我只是想知道是否有任何方法可以缓存付费应用程序,以便它们被购买 n 次,但每次都是从代理缓存而不是从 Internet 下载。撇开带宽上限不谈,直接从 Internet 下载会降低每个人的速度,无论公平排队和相关“修复”如何。
我知道这不太可能,但我认为在研究其他解决方案(例如,QoS)之前,没有什么可失去的,却能获得一切。
您要缓存的数据并不意味着要缓存。它特定于下载它们的用户。(在下载付费应用程序时缓存它们也是窃取它们的好方法。)
这就是源服务器发送类似
Cache-Control: private
或no-cache
与其一起发送标头的原因,以专门指示下游缓存(如您的代理服务器)不要缓存数据。squid 等一些缓存提供了覆盖这些指令的方法;由于您没有说明您使用的是什么,如果您真的绝对下定决心要这样做,请参阅您的文档以了解详细信息。(但请不要这样做。它几乎会破坏依赖于此行为正确性的所有其他站点。)