Php 断开连接

Php 断开连接,php,download,x-sendfile,Php,Download,X Sendfile,我在CentOS 5.2版上使用lighttp 1.5。该网站是一个免费的股票照片网站,允许用户下载文件。每个文件大约3-6MB。下载脚本是一个如下所示的php脚本 set_time_limit(0); //... header( "Content-Disposition: attachment; filename=\"" . $title . '"' ); header( "Content-type: image/jpeg"); header( "Content-Length: "

我在CentOS 5.2版上使用lighttp 1.5。该网站是一个免费的股票照片网站,允许用户下载文件。每个文件大约3-6MB。下载脚本是一个如下所示的php脚本

 set_time_limit(0);
 //...

 header( "Content-Disposition: attachment; filename=\"" . $title . '"' );
 header( "Content-type: image/jpeg");
 header( "Content-Length: " . filesize($file));
 header( "X-LIGHTTPD-send-file: " . $file);

问题的描述是,我一次下载5或6个不同的文件。其中一个文件以1/2的速度通过,将开始以每秒1k的速度下载,然后退出。图像永远不会完全到达。我重试并下载图像,它可以正常下载,即使需要5分钟。很多用户都在报告这个问题,我在高峰期就注意到了。Ping显示非常低的数据包丢失。有人知道为什么连接会断开吗?是灯光还是网络?任何帮助都将不胜感激。

毫无疑问,传输速率的逐渐下降只是您的浏览器试图让您获得有用信息的产物。事实上,下载停止了,永远不会恢复。可能有这样的原因,但最有可能的是源站点超载,将您的下载扔到了总线下。除了寻找一个更可靠的合作伙伴之外,你别无选择。

有什么办法可以最大限度地减少被扔到车下的下载?是网络还是服务器?继续找一家新的托管公司是不可行的,我可以要求一个更大的连接或更多的资源。有时你会得到你所付出的——一个免费的网站值得你付出每一分钱。问题真的可能在任何地方。如果你仔细想想,数十台甚至数百台不同的计算机参与了在主机和你的计算机之间移动数据。在所有这些机器中,对任何困难的默认响应都是放弃并假设客户机将重试。最可能的问题是主机内存不足或其他稀缺资源不足,并且通过终止需要不可用资源的进程来恢复。