![带宽监控器](https://linux22.com/image/516826/%E5%B8%A6%E5%AE%BD%E7%9B%91%E6%8E%A7%E5%99%A8.png)
我正在用 PHP 创建一个带宽配额程序,但我发现用 PHP 创建它有点困难。作为我正在尝试做的一个示例,用户每天可以下载 10GB,达到带宽上限后,用户将无法连接。
我想找到一个程序来记录远程主机使用了多少带宽(每个远程 IP 地址和远程端口(英文:remote port)。远程端口对于识别 NAT 后面的用户是否下载了文件非常重要。
我想知道是否可以通过用户名而不是 IP 来监控远程主机?我可以跟踪用户使用的带宽,让这更简单吗?就像rapidshare 流量共享系统。我需要这样的系统!
您能否给我一些想法和指示,告诉我如何使用 PHP 或任何脚本语言创建这样的系统?我非常感激!
答案1
IP 端口有与您描述的问题完全无关
忘掉 IP 地址吧。很多年前,当互联网上的每台计算机都有一个固定的公共 IP 地址时,它就可以正常工作。但那个时代早已一去不复返了。
一个用户可以从多个客户端地址连接。多个用户可以从一个 IP 地址连接。将所有访问限制为经过身份验证的用户,并通过 PHP 脚本运行所有下载,该脚本
1) picks up the authenticated user from the session and redirects to login on failure.
2) identifies if they've sufficient quota to download the requested file or redirects to paid package page
3) updates the quota used at points throughout the download
C。
答案2
这是一个老问题,所以我猜楼主不太可能还在寻找答案。但我会补充一些意见,以方便未来的访客。
互联网上充斥着小型单文件脚本,用于控制字节消耗(数量)和带宽(速度)。但是我还没有发现任何 PHP 系统(a)设计为应用程序而不是单个脚本,并且(b)也是开源的。因此,我构建了自己的系统,我已经发布 alpha 版本以便尽早获得反馈。
欢迎任何人试用该软件并提出功能建议 - 它是免费且开源的。在安装阶段稍加耐心即可使用,但可能还不适合 PHP 初学者。任何正在构建此类系统的人都可以深入研究源代码以获取想法,或者在已有的基础上进行构建。