我有一个脚本每隔半小时生成一个新的CSV文件(在我的网页目录中),它会替换原来的文件,并使用相同的文件名将新文件放在其位置,该文件链接到我的网站
当我从我的网站下载文件时,我得到的文件与第一次在此计算机上下载时的文件相同,而不是获得更新版本。
我的第一个想法是确保脚本仍然正常运行,经过测试,我可以确认它是。
然后我清除了Chrome中的缓存和下载历史记录并尝试再次下载,这次它按预期工作。
我正在运行ubuntu和apache的机架式云服务器上运行它。我假设有一些设置我需要重新配置来解决这个问题。有人可以指出我正确的方向。
提前致谢。
答案 0 :(得分:4)
一个有点脏的解决方案是附加到脚本,该脚本允许您下载文件随机数(或者可能是时间戳)作为参数以防止缓存。
例如:
www.example.com/download.php?file=my.csv&rand=123456789
答案 1 :(得分:1)
this page上的第二个示例显示了如何在许多客户端和代理上禁用缓存。你应该使用这样的东西。
<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>
使用此解决方案,您可以缓存链接所在的页面。该链接无论如何都会有用。