在后台PHP中下载外部文件?

在后台PHP中下载外部文件?,php,javascript,curl,background-process,Php,Javascript,Curl,Background Process,我有三周的时间来寻找这个: 我有这个页面,必须在验证用户提供的数据后下载一个文件。我进行验证并执行一个外部脚本,该脚本为我提供一个URL。我用这个URL下载另一个文件,稍后我会执行 我曾尝试用curl、wget、file\u put\u content、javascript、ajax和jquery下载该文件,但运气不好,该文件的大小为150MB以上,因此我创建了一个很好的进度条,告诉用户下载情况,并且已经有了读取下载大小的方法 事实上,我可以用cURL下载文件,但问题是“do_form.php”

我有三周的时间来寻找这个:

我有这个页面,必须在验证用户提供的数据后下载一个文件。我进行验证并执行一个外部脚本,该脚本为我提供一个URL。我用这个URL下载另一个文件,稍后我会执行

我曾尝试用curl、wget、file\u put\u content、javascript、ajax和jquery下载该文件,但运气不好,该文件的大小为150MB以上,因此我创建了一个很好的进度条,告诉用户下载情况,并且已经有了读取下载大小的方法

事实上,我可以用cURL下载文件,但问题是
“do_form.php”
在文件完全下载之前不会加载,所以我想先加载页面,然后在后台下载文件,这样我就可以向用户显示下载进度

请告诉我这是可能的。。。谢谢

看一看。也许gearman的背景工作适合你的需要。此作业甚至可以与web服务器在同一台计算机上运行。当然,对页面的早期响应有一个缺点,即它不包含成功信息。您需要再次使用AJAX轮询该信息


如果你决定这么做,你也应该看一下,因为这会使事情变得轻松很多。

Gearman很棒,你可能还想考虑BeaStald,这是一个非常简单的PHP工具。谢谢大家,我检查了两个解决方案,但是我的老板不想安装任何额外的软件。所以我仍然在寻找答案。。。(我想我有一个变通方法,但我需要先测试一下,所以欢迎任何回复或评论)那么你的变通方法是什么?我想做同样的事情。今天,当我回家时,我会寻找代码并发布它。:)