我目前拥有并运行在PHP上运行的在线FTP,我正在尝试合并下载内容(这是FTP最基本的功能之一)。我已经使用下面的代码完成了此操作,但是当我尝试下载服务器备份(通常约为800mb)时,下载有时只会导致网络错误。这非常烦人和不便。我对任何可能发生这种情况的想法表示赞赏。预先感谢!
header("Content-Disposition: attachment; filename=\"$name\"");
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize("ftp://$u:$p@$h".$_GET['data']));
header("Connection: close");
readfile("ftp://$u:$p@$h".$_GET['data']);
尝试将header('Expires: 0');
和set_time_limit(0);
放在readfile()
之前,看是否有帮助。
关于压缩,我相信您首先需要在压缩文件之前将文件下载到服务器。
不确定是否有免费替代品,但是Chilkat同时具有FTP和文件压缩功能(Zip,GZip或TAR)