cURL 总是获取缓存的副本
Posted
技术标签:
【中文标题】cURL 总是获取缓存的副本【英文标题】:cURL is always fetching cached copy 【发布时间】:2016-11-27 04:33:38 【问题描述】:我的脚本通常需要大约 4 分钟才能完成,但是每当我在 SSH 中执行 cURL 时,它都会立即显示输出,这是一个老尝试。
这仅在 SSH 和 crontab
中发生,而 wget
和使用我的浏览器总是可以获得新鲜的内容。
我尝试在命令中添加'Cache-Control: no-cache'
参数,但没有帮助。
root@server [~]# /usr/bin/curl -H 'Cache-Control: no-cache' http://full-path/curl
我还应该尝试什么?
【问题讨论】:
也许是crontab
维护了一个缓存...看here。不过,还有其他关于此的问题,因此您不妨在 Google 上搜索“crontab 缓存”。
不仅是crontab
,当我在crontab
外的终端中使用curl
命令时也会发生这种情况。它会立即输出一个旧副本。
【参考方案1】:
您可以附加 ?xyz=1469279729
以获取唯一的 url 字符串并避免缓存。但不太可能是 curl 正在缓存结果,无论是代理/服务器返回陈旧数据,还是使用本地缓存来 curl 的某个别名。
【讨论】:
我的实际 URL 有?corn
所以我附加了 &xyz=123
但这没有任何帮助。据我记得我有varnish
作为缓存服务器,我不确定,我会试着弄清楚。感谢您的意见。以上是关于cURL 总是获取缓存的副本的主要内容,如果未能解决你的问题,请参考以下文章