检查服务器列表离线/在线PHP

时间:2010-08-04 11:04:38

标签: php offline status

我尝试制作一个脚本来检查我的服务器是在线还是离线:

<?

    $server = "12.34.56.78";

    $check = @fsockopen($server, 22);

    if ($check) {
        @fclose($check);
        echo "online";
        exit;
    }else{
        echo "offline";
    }

?>

所以这个脚本有效,但是如何创建可以检查多个ip地址的脚本呢?

问候, 的Matthias

3 个答案:

答案 0 :(得分:2)

function checkServerOnline($server, $port = 22) {
    $check = @fsockopen($server, $port);
    if ($check) {
        @fclose($check);
        return true;
    } else {
        return false;
    }

然后你可以使用各种服务器端口组合来调用它。

答案 1 :(得分:2)

$servers = Array("server1", "server2");

foreach ($servers as $server) {
  // same as before
}

答案 2 :(得分:1)

open source tools可供使用。

结帐Nagios - The Industry Standard In Open Source Monitoring

  

Nagios是一个功能强大的监控系统,可帮助企业在影响关键业务流程之前识别和解决IT基础架构问题。

     

Nagios监控整个IT基础架构,以确保系统,应用程序,服务和业务流程正常运行。如果发生故障,Nagios可以向技术人员发出问题警报,允许他们在中断影响业务流程,最终用户或客户之前开始修复流程。借助Nagios,您将永远不必解释为什么看不见的基础架构中断会损害您组织的底线。