php下面方法实现下载流量怎么算啊

i-w 发布于 2012/04/28 10:20
阅读 225
收藏 0
PHP
一个web服务器A,一个文件服务器B,用户访问A的file.php实现下载B服务器上的file.exe
$fp = fopen(B/file.exe, "rb");  
$times = (100 * 1024)/8192;
while (!feof($fp)) {
   $i=0;
   while($i < $times){
	echo fread($fp, 8192);
	$i =$i+1;
   }
   unset($i);
   flush(); //输出缓冲  
   ob_flush();  
   sleep(1);
}  
fclose($fp);

这样B那肯定是算流量的,那A那还算file.exe的流量么。

再A的流量总量是不是就是web服务器日志文件中统计的总量啊。

加载中
0
红薯
红薯
当然要算了,不过你的A和B可能是内网连接,就无所谓了呗
i-w
i-w
但是我用上面方法下载web服务器中没记录下载文件file.exe的流量,只有B记录了。。那是不是file.exe就不算A的流量了。。与红薯说的不符合了。。
酒逍遥
酒逍遥
回复 @i-w : web服务器统计的是A的流量
i-w
i-w
呃。。。web服务器日志中统计的不是总流量那?
0
i-w
i-w
怎么做才能只有B的流量啊。。。。
0
酒逍遥
酒逍遥

A 直接给用户一个重定向 到B 的文件下载地址..

例如:A的访问地址是http://A/file.php B的文件的地址http://B/file.exe 

直接把用户重定向到http://B/file.exe A 就不占用下载流量了.

如果为了安全性或想隐藏文件真实路径

那么可以在B上建立一个专门输出下载文件的php. A 重定向到B 的这个php文件 ,并传递相关的参数

由B上的php文件负责输出要下载的文件就行

返回顶部
顶部