我想从客户端找出给定'Nginx'或'Apache'服务器的'keepalive_requests'的值。 'Nginx'的默认值为100(http://nginx.org/en/docs/http/ngx_http_core_module.html),但我想在www.example.com上对此进行分析,我无权访问该配置。
显然我可以启动Wireshark并手动完成。我希望有一些简单的shell(例如'wget'之类)命令。
答案 0 :(得分:1)
从客户端,我使用ab test,wireshark和notepad ++等编辑器来计算套接字中的http请求数。
首先我使用apache ab test发送请求,如下所示:
ab -n 100 -c 100 http://www.example.com/index.php
在执行之前,启动我的wireshark,然后设置显示过滤器:
ip.dst ==&& tcp.port == 80&& !http&& tcp.flags.fin == 1
ab测试完成后,wireshark的结果列表显示请求期间使用的总套接字。右键单击一个数据包,然后单击跟随TCP流,打开的窗口显示此套接字中发送和接收的所有消息。
如果最后一个FIN方向是由远程nginx服务器发送的,它受keepalive_requests值的影响。我们可以将此TCP连接中的所有请求复制到记事本++中,搜索关键字,然后计算此套接字中的请求。该数字表示远程nginx服务器中keepalive_requests设置的值。
顺便说一句,我希望有一个更好的解决方案,我的解决方案并不是那么好。