PHP:
<?php
$data .= "
<style>
td,body
{
font-family: Arial, Helvetica, sans-serif;
font-size: 8pt;
color: #444444;
}
</style>
<br>
<center>
<div style=\"border-bottom:1px #999999 solid;width:480px;\"><b>
<font size='1' color='#3896CC'>Service Status</font></b>
</div>
</center>
<br>";
//configure script
$timeout = "1";
//set service checks
$port[1] = "80"; $service[1] = "Apache"; $ip[1] ="";
$port[2] = "21"; $service[2] = "FTP"; $ip[2] ="";
$port[3] = "3306"; $service[3] = "MYSQL"; $ip[3] ="";
$port[4] = "25"; $service[4] = "Email(POP3)"; $ip[4] ="";
$port[5] = "143"; $service[5] = "Email(IMAP)"; $ip[5] ="";
$port[6] = "2095"; $service[6] = "Webmail"; $ip[6] ="";
$port[7] = "2082"; $service[7] = "Cpanel"; $ip[7] ="";
$port[8] = "80"; $service[8] = "Internet Connection"; $ip[8] ="google.com";
$port[9] = "2086"; $service[9] = "WHM"; $ip[9] ="";
//count arrays
$ports = count($port);
$ports = $ports + 1;
$count = 1;
//beggin table for status
$data .= "<table width='480' border='1' cellspacing='0' cellpadding='3' style='border-collapse:collapse' bordercolor='#333333' align='center'>";
while($count < $ports){
if($ip[$count]==""){
$ip[$count] = "localhost";
}
$fp = @fsockopen("$ip[$count]", $port[$count], $errno, $errstr, $timeout);
if (!$fp) {
$data .= "<tr><td>$service[$count]</td><td bgcolor='#FFC6C6'>Offline </td></tr>";
} else {
$data .= "<tr><td>$service[$count]</td><td bgcolor='#D9FFB3'>Online</td></tr>";
}
$count++;
}
//close table
$data .= "</table>";
echo $data;
?>
Simply paste this into your page to display server status of the current box.
Can be seen in action here : http://stealthhosts.com/support/support_server_status.php
EDIT - forgot to add that it is currently coded for showing linux CPANEL status. VERY easy to edit though, simply change the port numbers and their descriptions to display whatever you like (windows or NIX)
e.g - to monitor a windows box running IIS on port 8080, simply change:
PHP:
$port[1] = "80"; $service[1] = "Apache"; $ip[1] ="";
to
PHP:
$port[1] = "8080"; $service[1] = "IIS"; $ip[1] ="";