1

我正在为 *WRT 路由器的 YAMon 脚本开发安装程序(请参阅http://www.dd-wrt.com/phpBB2/viewtopic.php?t=289324)。

我目前正在使用 DD-WRT v3.0-r28647 std (01/02/16) 在 TP-Link TL-WR1043ND 上进行测试。像许多其他人一样,这个固件变体不包括curl所以我(优雅地)回退到一个wget电话。但是,DD-WRT 似乎包含一个精简版本,wget因此 -C 和 --no-cache 选项无法识别。

总而言之,我的wget电话坚持下载所请求文件的缓存版本。

顺便说一句 - 我正在使用: 我的远程服务器上的源文件在wget "$src" -qO "$dst" 哪里,并且是本地路由器上的目标srcdst

到目前为止,我没有成功尝试: 1. 将时间戳附加到请求 URL 2. 重新启动路由器 3. 运行stopservice dnsmasq& startservice dnsmasq None 改变了我仍然获得文件的缓存版本的事实。

我正在用头撞墙……有什么建议吗?谢谢!

4

2 回答 2

0

我有同样的问题。从摄像头获取图像时,摄像头上的 HTTP 服务器始终发送相同的图像。

wget --no-http-keep-alive ..

解决了我的问题

我的全线是

wget --no-check-certificate --no-cache --no-cookies --no-http-keep-alive $URL -O img.jpg -o wget_last.log
于 2019-05-19T11:46:52.000 回答
0

不是一个真正的答案,而是一个看似可行的解决方法......

经过大量实验,我发现如果请求文件的扩展名是'.html' ,wget似乎总是从远程服务器返回文件的最新版本;但如果是其他内容(例如,'.txt' 或 '.sh'),则不会。

我不知道为什么会发生这种情况或它们被缓存在哪里。

但是现在我这样做了,我的安装程序所需的所有文件在删除服务器上都有一个 html 扩展名,并且脚本在本地使用适当的扩展名保存它们。(叹息......我生命中的几天,我不会回来)

于 2016-01-31T14:29:12.310 回答