我的网站托管用户需要下载的msi文件。该文件没有什么特别之处。它位于Web服务器上的一个目录中,其中有一个指向用户单击的常规HREF。有时,用户会抱怨他们无法打开msi文件,因为Windows Installer声称该文件已损坏。重新下载文件没有帮助。我最终通过电子邮件将该文件作为通常有效的附件发送。
我的猜测是该文件在用户的浏览器缓存中已损坏,或者可能是用户经历的中间代理缓存。
为什么会这样?是否有一种技术/最佳实践可以最大限度地减少损坏的可能性,或者确保用户在下载过程中损坏时可以获得该文件的最新副本?
答案 0 :(得分:1)
我的建议是:
答案 1 :(得分:1)
如果原因只是缓存,那么我认为您可以在重新下载文件之前重命名该文件。这也适用于任何代理。
编辑另外,我相信大多数浏览器都不会缓存页面,除非Get和Post参数保持不变。相同的可能通常适用于任何URL。尝试在每次下载的URL末尾添加一个唯一的get(或post)参数。您可以使用当前时间或随机数等。而不是超链接,您可以使用一个按钮,单击该按钮时,将具有唯一参数的表单提交到下载URL。