Have your own service status script! (CPANEL, PHP)

Namecheap AuctionsNamecheap Auctions
SpaceshipSpaceship
SpaceshipSpaceship
Watch

adam_uk

Established Member
Impact
20
this script is designed for users with there own host running cpanel with php

demo can be seen here
http://www.intentio-server.com

the code:
PHP:
<?php
/*
*   +------------------------------------------------------------------------------+
*       CPANEL STATUS SCRIPT                                                               
*   +------------------------------------------------------------------------------+
*       Copyright Notice(s)                                                        
*   +------------------------------------------------------------------------------+
*       Disclaimer Notice(s)                                                         
*       ex: This code is freely given to you and given "AS IS", SO if it damages     
*       your computer, formats your HDs, or burns your house I am not the one to
*       blame.                                                                    
*       Moreover, don't forget to include my copyright notices and name.              
*   +------------------------------------------------------------------------------+
*       Author(s): Crooty.co.uk (Adam C)                                   
*   +------------------------------------------------------------------------------+
*/ 

$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:480;\"><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] ="";

//
// NO NEED TO EDIT BEYOND HERE 
// UNLESS YOU WISH TO CHANGE STYLE OF RESULTS
//

//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>";
			fclose($fp);
		}
	$count++;
fclose($fp);

} 

//close table
$data .= "</table>";

echo $data;
?>

installation: copy to web server THATS IT!

should be fairly self explanitry

to include on your website you can either link to it your use include(); (if you use include remember to rename the extention to .php)

lemme know what you think :)

i made it so it saves me logging into cpanel to check what the servers up to and thought id share it


UPDATE:
if you wish to display server uptime and server loads on the script add this to the code (REMEMBER: it must be placed inside the <? and ?> for it to work

PHP:
//
// SERVER INFORMATION
//

$data1 .= "
<br>
    <center>
     <div style=\"border-bottom:1px #999999 solid;width:480;\"><b>
       <font size='1' color='#3896CC'>Server Information</font></b>
     </div> 
   </center><BR>";

$data1 .= "<table width='480' border='1' cellspacing='0' cellpadding='3' style='border-collapse:collapse' 

bordercolor='#333333' align='center'>";

//GET SERVER LOADS
$loadresult = @exec('uptime'); 
preg_match("/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/",$loadresult,$avgs);


//GET SERVER UPTIME
  $uptime = explode(' up ', $loadresult);
  $uptime = explode(',', $uptime[1]);
  $uptime = $uptime[0].', '.$uptime[1];

$data1 .= "<tr><td>Server Load Averages </td><td>$avgs[1], $avgs[2], $avgs[3]</td>\n";
$data1 .= "<tr><td>Server Uptime        </td><td>$uptime                     </td></tr>";
$data1 .= "</table>";
echo $data1;

B-)
 
Last edited:
1
•••
The views expressed on this page by users and staff are their own, not those of NamePros.
AfternicAfternic
Very cool!!

Here's the code for adding load time,

Code:
$loadresult = @exec('uptime'); 
preg_match("/averages?: ([0-9\.]+),[\s]+([0-9\.]+),[\s]+([0-9\.]+)/",$loadresult,$avgs);
echo "Server Load Averages: <b>$avgs[1], $avgs[2], $avgs[3]</b>\n";
 
0
•••
thanks B-)

ill update it now and will post the update B-)

updated B-)
 
Last edited:
0
•••
very cool code... i just might use the server load code for the bottom of my gaming engine... :) very nice service code as well! Simple, not like those 800000 line codes :)
 
0
•••
very nice thanks for that :tu:
 
0
•••
Nice script...can i redistibute it on a free scripts site i am starting????
 
0
•••
demo looks clean, nice color choice :)
 
0
•••
I must say this is the best script like this around that I have found online, I must say Thank you very much for the script!!!
 
0
•••
davood said:
Nice script...can i redistibute it on a free scripts site i am starting????

sure. as long as im credited :p

I must say this is the best script like this around that I have found online, I must say Thank you very much for the script!!!

no problem :) glad someones finding it usefull


csmaster: thanks :)
 
0
•••
very useful
 
0
•••
0
•••
Nice! Although I really have no real use for this script on my site, I may just put it somewhere because its cool :hehe:
 
0
•••
Wow Thanks. Im going to place this as soon as my server is back online D-:
 
0
•••
glad you all like it :)

Tiff said:
Wow Thanks. Im going to place this as soon as my server is back online D-:

hehe never a good start is it.
 
0
•••
adam_uk said:
glad you all like it :)



hehe never a good start is it.

My Host is doing a Server Upgrade. And with your Script ill be able to see if it was a upgrade or not :laugh:
 
0
•••
Tiff said:
My Host is doing a Server Upgrade. And with your Script ill be able to see if it was a upgrade or not :laugh:

but hopefully theyll tell you when it done lol :)
 
0
•••
Lol yeah if they were a reptutable company they would tell you about that and they would do it.
 
0
•••
brilliant code, as my friend runs a hosting company so i will give this to him thanks :)
 
0
•••
Yay! I've always wondered how these worked...
 
0
•••
Thanks :)
 
0
•••
Dynadot — .com TransferDynadot — .com Transfer
Truehost — .com domains from $4.99, hosting includedTruehost — .com domains from $4.99, hosting included

We're social

Escrow.com
Spaceship
Domain Recover
CryptoExchange.com
Catchy
DomDB
NameFit
  • The sidebar remains visible by scrolling at a speed relative to the page’s height.
Back