所以今天早些时候我想到了这个问题,我想知道有什么可接受的方法可以查明 WAMP 服务器是否没有活动会话(这样我就可以重新启动整个服务器)。
我使用的是安装在 Windows 2003 服务器上的 WAMP。由于 HTTP 是无状态的,而且该网站是一个简单的基于 PHP + Flash + MySQL 的网站,所以我检查是否有人访问该网站的唯一方法是查看访问日志。现在请注意,该网站的流量非常非常低,几天都没有访问。大概一周左右才会看到一条访问日志条目。
回想起来,我本可以检查一下 PHP 的“会话存储”。我知道该网站的编程没有进行任何特殊的会话管理,因此我又想问一个问题,PHP 默认将会话信息存储在哪里?
答案1
通过服务器状态处理程序启用的 mod_status 将准确地告诉您实时建立了哪些连接。
此外,如果您担心重启时丢失连接,您可以执行 Apache 平滑重启,这将在重启时保持活动连接。
httpd -k 重新启动
我的 WampDeveloper Pro 设置有这个...
LoadModule status_module modules/mod_status.so
ExtendedStatus On
<VirtualHost *:80>
DocumentRoot "C:/WampDeveloper/Websites/ServerHost/webroot"
ServerName ServerStatus
ServerAlias httpd.status
<Directory "C:/WampDeveloper/Websites/ServerHost/webroot">
Options FollowSymLinks
AllowOverride None
order deny,allow
deny from all
</Directory>
<Location />
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>
</VirtualHost>
这是一个特殊的 VirtualHost,可显示所有服务器连接。
答案2
从 cmd 提示符运行“netstat -a -n”并在端口 80 上查找已建立的连接怎么样?