我写了一个cron,它从给定的URL下载CSV文件,并根据该文件内容更新数据库。 URL不会更改,URL下的文件会更改。
我的客户告诉我,更新数据库被延迟并向我发送当前文件以与服务器进行比较。我发现服务器上的文件更新有延迟,可能是几小时或1-2天。看起来服务器正在使用一些缓存的CSV文件而不是下载新文件。我通过添加“?v =”。time()更改了网址,但它没有解决问题。
我的问题是 - 是我的服务器缓存文件或该URL下的服务器向我发送了错误的文件(他们可能会检查IP并发送缓存文件而不是新文件)。怎么检查?怎么解决?
尝试在url的末尾添加伪随机值,以便始终查找新的(非缓存)版本
file_get_contents('url_here.csv?' . date('Ymd'))"
这应该与JS / CSS的“缓存清除”相同