我在使用Firefox缓存我们网站上的exe文件时遇到了一些麻烦。如果我用IE或Chrome下载它并再次开始下载,那么第二次下载会立即完成,但是使用Firefox它会从一开始就下载所有内容。
我在Chrome和Firefox的网络标签中添加了屏幕截图。请注意,两者都接收HTTP状态代码200,但Chrome表示(来自缓存)。我需要添加哪些响应标头才能使Firefox缓存它?
铬:
火狐:
如果您想尝试自行下载,请输入以下网址:https://dlud0tbph7s2n.cloudfront.net/Production/Windows/DegooSetup-Production-1.0.1052.exe。
答案 0 :(得分:4)
您可以通过查看以下内容来检查是否缓存了exe文件:cache'或使用像HttpWatch这样的工具。
您的EXE文件未获得缓存。在旧版本的Firefox中,可能是由于文件超过单个缓存条目的最大大小。默认情况下,最大条目大小现在为50 MB。您可以通过查看' browser.cache.disk.max_entry_size'来查看此信息。在' about:config'。
问题可能是由于您设置的max-age值非常大 - 2000000000秒约为63年。 HTTP规范仅建议使用长达一年的时间段,并且某些浏览器拒绝缓存非常大的max-age值:
https://stackoverflow.com/a/25201898/66911
建议的max-age最大值为31536000秒或更短。