我正在使用 fsockopen() 调用列表中的多个连接,以查看各种 ip/host 和端口的在线状态...
<?php
$socket = @fsockopen($row[2], $row[3], $errnum, $errstr, 1);
if ($errnum >= 1) { $status = 'offline'; } else { $status = 'online';}
fclose($socket);
如果可行,我不会抱怨,但我在列表中检索了大约 15 个 ip/端口(php for() 命令..)。我想知道是否有更好的方法来做到这一点?这种方式很慢!?!服务器大约需要 1-2 分钟才能回复所有这些信息。
更新:
<?php
$socket = @fsockopen("lounge.local", "80", $errnum, $errstr, 30);
if ($errnum >= 1) { $status = 'offline'; } else { $status = 'online'; }
?>
它将显示在一个列表中:“ReadyNAS AFP readynas.local:548 online”
我不知道我还能告诉你什么?加载结果集合只需要很长时间......