【发布时间】:2016-08-09 21:21:50
【问题描述】:
这是一件事-外部服务器上有一个文件。 我的脚本需要将此文件的内容发送给访问者。 所以它需要从外部服务器下载一个文件,然后上传给访问者。但是文件很大(> 200 MB),所以我不能先下载文件然后上传它——它太慢了。而且我还需要支持恢复下载。 这就是我不知道如何正确处理的问题。
一个想法是:
- 启动wget在后台下载文件
- 然后是我的脚本 在 PHP 中将在下载文件时发送文件的内容。 但是如果 wget 比客户端的浏览器慢怎么办?我的脚本应该 等等?
另一个:
- 在 PHP 中使用 curl 下载文件并在进度输出我下载的内容。但是我不确定如何处理恢复
我不确定我应该如何处理这种情况。
【问题讨论】:
-
你知道什么是代理吗?
-
@Dagon 我愿意。您认为我应该编写自己的代理还是有我可以这样配置的代理?
-
我认为这很广泛,但如果你用谷歌搜索“php代理”,你可能会找到答案
-
200MB 对于服务器到服务器的传输来说并不是那么大,所以除非源端存在真正的延迟问题,否则同步处理它很可能会容易得多(即,先下载)。如前所述,这是一个相当广泛的问题,我想最佳解决方案的细节也取决于文件类型。如果您可以预测最有可能请求哪些文件,您也可以探索一些机会主义策略。