我想知道我是否应该在家里部署一个带有 apache2 的服务器。我想实时了解我的网站当前的流量是多少。
谢谢,麻烦您了。
:)
答案1
您可以安装可实时监控各种 tcp 和 udp 信息的软件包iptraf
。页面点击次数会实时记录在您配置的 apache 日志中。您可以扫描该文件以查找与您的时间段相匹配的行数,也可以使用类似皮维克为您的 apache 服务器提供类似于 google analytics 的分析。
答案2
我经常添加状态模块到我的 Apache 配置,以便我可以检查 Apache 的运行状态(此示例将访问限制为仅localhost
状态请求)。
这进入虚拟主机配置:
# Server status
<IfModule mod_status.c>
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost
</Location>
</IfModule>
这适用于通用服务器配置(我使用过/etc/apache2/conf.d/10status.conf
):
# Turn on extended status collection
<IfModule mod_status.c>
ExtendedStatus On
</IfModule>
然后我确保mod_status
已启用:
sudo a2enmod status
之后我就可以访问http://your-virtual-host.example.com/server-status并获取各种详细信息,包括高级摘要,如下所示:
Server uptime: 7 days 22 hours 56 minutes 45 seconds
Total accesses: 292855 - Total Traffic: 5.6 GB
CPU Usage: u85.78 s8.21 cu1.49 cs0 - .0139% CPU load
.426 requests/sec - 8.5 kB/second - 19.9 kB/request
2 requests currently being processed, 8 idle workers
....
Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-1 27078 0/9/21119 _ 0.06 3 101 0.0 0.04 372.17 67.195.113.233 example.com GET /foo.php?state=ND&thing=Madison
1-1 - 0/0/21273 . 0.01 137 0 0.0 0.00 402.35 128.61.99.146 example.com GET /favicon.ico HTTP/1.1
....
我特别喜欢每秒请求数,以及有关正在(或最近)提供的 URL 的详细报告。
答案3
答案4
ssh root@HOST tcpdump -U -s0 -w - '不是端口 22' | wireshark -k -i -
HOST = 你的网络服务器从菜单中选择“Statistics”并单击“IO Graphs”