Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP流量计算_Php_Traffic Measurement - Fatal编程技术网

PHP流量计算

PHP流量计算,php,traffic-measurement,Php,Traffic Measurement,我们正在使用NGINX/apache的访问日志计算客户的流量使用情况。 现在我想到了一个大问题 如果我这样做怎么办: <?php file_get_contents( "http://www.speedtest.qsc.de/1GB.qsc" ); ?> 调用本身将是一个简单的GET,只有几个字节/千字节,但是假设我们有足够的内存限制和最大执行时间,脚本将下载一个1GB的文件。 这根本不会被记录,对吗 有没有办法追踪我上面提到的东西 提前感谢apache,默认日志为 L

我们正在使用NGINX/apache的访问日志计算客户的流量使用情况。 现在我想到了一个大问题

如果我这样做怎么办:

<?php
    file_get_contents( "http://www.speedtest.qsc.de/1GB.qsc" );
?>

调用本身将是一个简单的GET,只有几个字节/千字节,但是假设我们有足够的内存限制和最大执行时间,脚本将下载一个1GB的文件。 这根本不会被记录,对吗

有没有办法追踪我上面提到的东西


提前感谢apache,默认日志为

LogFormat "%h %l %u %t \"%r\" %>s %b"
%b表示响应的
大小(字节),不包括HTTP头。在CLF格式中,即当没有发送字节时,为“-”而不是0

你可以用这个

对于nginx,它也是默认的

log_format compression '$remote_addr - $remote_user [$time_local] '
                       '"$request" $status $bytes_sent '
                       '"$http_referer" "$http_user_agent" "$gzip_ratio"';

如果下载的文件没有显示,只是被丢弃,那么php下载调用将产生的流量就不算在内了。响应将为0字节(无输出),这有帮助吗?遗憾的是,我们不能更改客户代码中的任何内容,因此我们不能向源代码本身添加任何特殊的日志记录命令。