- Impact
- 9
Here is a simple server status script which I have made, it should work with most hosting accounts that have PHP enabled. If not you may need to change the servers in the services array, for example on shared hosting the HTTP server address may need to be changed to your websites URL.
A live demo is available here:
http://lee.conceptsublime.com/service_status.php
You can add/remove services by adding or removing them to/from the $services array.
Any feedback is appreciated!
To install just copy the code below into a php file, and run the php file. Advanced users may want to adjust the services it checks, depending on what you have installed on your server.
Thanks, Lee
A live demo is available here:
http://lee.conceptsublime.com/service_status.php
You can add/remove services by adding or removing them to/from the $services array.
Any feedback is appreciated!
To install just copy the code below into a php file, and run the php file. Advanced users may want to adjust the services it checks, depending on what you have installed on your server.
PHP:
<?php
/*
Server Status Script
Created by: Lee Findlow
Contact: [email protected]
Website: http://conceptsublime.com
*/
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Server Status Script</title>
</head>
<body>
<?php
//Page Variables
$online='<td style="background-color:#00FF00; padding:5px;">Online</td>';
$offline='<td style="background-color:#FF0000; padding:5px;">Offline</td>';
//Functions
function servercheck($server,$port){
//Check that the port value is not empty
if(empty($port)){
$port=80;
}
//Check that the server value is not empty
if(empty($server)){
$server='localhost';
}
//Connection
$fp=@fsockopen($server, $port, $errno, $errstr, 1);
//Check if connection is present
if($fp){
//Return Alive
return 1;
} else{
//Return Dead
return 0;
}
//Close Connection
fclose($fp);
}
//Ports and Services to check
$services=array(
'HTTP (Port 80)' => array('localhost' => 80),
'HTTPS (Port 443)' => array('localhost' => 443),
'FTP (Port 21)' => array('localhost' => 21),
'MySQL (Port 3306)' => array('localhost' => 3306),
'SMTP (Port 25)' => array('localhost' => 25),
'POP3 (Port 110)' => array('localhost' => 110),
'Internet Connection' => array('google.com' => 80)
);
?>
<table>
<?php
//Check All Services
foreach($services as $name => $server){
?>
<tr>
<td><?php echo $name; ?></td>
<?php
foreach($server as $host => $port){
if(servercheck($host,$port)){ echo $online; }else{ echo $offline; }
}
?>
</tr>
<?php
}
?>
</table>
</body>
</html>
Thanks, Lee
Last edited: