NamePros
Welcome, Guest! Ready to make a name for yourself in the domain business? We welcome both the hobbyist and professional domainer to join the discussion as part of the NamePros community.

Click here to create your profile to start earning reputation for posting, and trader ratings for buying & selling in our free e-marketplace. Build your trader rating with each successful sale. Our system has tracked over 100,000 sales and counting!
FAQ & TOS Register Search Today's Posts Mark Forums Read

Go Back   NamePros.com > Website Development Discussion Forums > Programming > CODE
Reload this Page Server Status Script

CODE This forum is for posting code snippets and example scripts that aren't quite tutorials, but could be useful for others. You may post code snippets and/or completed scripts that you've written and want to share here.

Advanced Search
7 members in live chat ~  


Closed Thread
 
LinkBack Thread Tools
Old 12-19-2006, 11:11 AM THREAD STARTER               #1 (permalink)
NamePros Regular
Join Date: Mar 2006
Location: United Kingdom
Posts: 413
lee101 is a jewel in the roughlee101 is a jewel in the roughlee101 is a jewel in the rough
 




Server Status Script


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.
PHP Code:
<?php
/*
    Server Status Script
    Created by: Lee Findlow
    Contact:     leefindlow@gmail.com
    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$errstr1);
????: NamePros.com http://www.namepros.com/code/271042-server-status-script.html
            
//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)
????: NamePros.com http://www.namepros.com/showthread.php?t=271042
);
?>
<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
__________________
Linux Screenshots
Last edited by lee101; 12-19-2006 at 11:15 AM.
lee101 is offline  
Old 12-19-2006, 11:15 AM   #2 (permalink)
DomainersUniversity.com
 
Gene's Avatar
Join Date: Feb 2005
Location: Oswego, NY
Posts: 4,702
Gene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond repute
 


Member of the Month
April 2005
Ethan Allen Fund Cancer Survivorship Baby Health Cystic Fibrosis Marrow Donor Program Parkinson's Disease Child Abuse Save a Life Animal Rescue Save a Life Save a Life Animal Rescue
Works great! Thank you Rep added
__________________
.
.

Expired Domain Search -- ExpiredDomainBoss.com | Sell Domain Names -- DomainProfitsClub.com
-----------------------------------------------------------------------------------------------
Gene is offline  
Old 12-19-2006, 11:18 AM   #3 (permalink)
Senior Member
 
Barrucadu's Avatar
Join Date: Aug 2005
Location: East Yorkshire, England
Posts: 2,689
Barrucadu is a splendid one to beholdBarrucadu is a splendid one to beholdBarrucadu is a splendid one to beholdBarrucadu is a splendid one to beholdBarrucadu is a splendid one to beholdBarrucadu is a splendid one to beholdBarrucadu is a splendid one to behold
 




Nice simple bit of code, that will help some people.
Rep++

Infact, its given me an idea for a program to make...
Barrucadu is offline  
Old 12-19-2006, 11:33 AM THREAD STARTER               #4 (permalink)
NamePros Regular
Join Date: Mar 2006
Location: United Kingdom
Posts: 413
lee101 is a jewel in the roughlee101 is a jewel in the roughlee101 is a jewel in the rough
 




Thanks everyone, seems like ti works then, it is actually a part of a larger project that I am working, although I thought i would release this as it is probably useful alone
__________________
Linux Screenshots
lee101 is offline  
Old 12-19-2006, 11:38 AM   #5 (permalink)
DomainersUniversity.com
 
Gene's Avatar
Join Date: Feb 2005
Location: Oswego, NY
Posts: 4,702
Gene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond reputeGene has a reputation beyond repute
 


Member of the Month
April 2005
Ethan Allen Fund Cancer Survivorship Baby Health Cystic Fibrosis Marrow Donor Program Parkinson's Disease Child Abuse Save a Life Animal Rescue Save a Life Save a Life Animal Rescue
Just a note: I 'think' it's working correctly, because the report I get says "Online" for all of the lines. But there is no way for me to know whether this report is correct. Just assuming it is!
__________________
.
.

Expired Domain Search -- ExpiredDomainBoss.com | Sell Domain Names -- DomainProfitsClub.com
-----------------------------------------------------------------------------------------------
Gene is offline  
Old 12-19-2006, 11:43 AM THREAD STARTER               #6 (permalink)
NamePros Regular
Join Date: Mar 2006
Location: United Kingdom
Posts: 413
lee101 is a jewel in the roughlee101 is a jewel in the roughlee101 is a jewel in the rough
 




Oh, thanks for that Gene, I'll have a fiddle with it now to test it, On my PC I don't have HTTPS, SMTP or POP3 and it doesn't recognise any, but i'll fiddle around disabling stuff to make sure it recognises everything, hopefully it will though.
__________________
Linux Screenshots
lee101 is offline  
Old 12-19-2006, 12:57 PM   #7 (permalink)
NamePros Regular
 
Noobie's Avatar
Join Date: Feb 2006
Location: Montreal, Quebec, Canada
Posts: 324
Noobie is on a distinguished road
 



Just a recommendation

PHP Code:
function servercheck($server,$port){ 
        
//Check that the port value is not empty 
????: NamePros.com http://www.namepros.com/showthread.php?t=271042
        
if(empty($port)){ 
            
$port=80
        } 
        
//Check that the server value is not empty 
        
if(empty($server)){ 
            
$server='localhost'
        } 
Can be
PHP Code:
function servercheck($server="localhost",$port="80"
__________________
Goldkey.com is a scam
What's your BMI? | Timestamp Generator
Noobie is offline  
Old 01-16-2007, 12:15 PM THREAD STARTER               #8 (permalink)
NamePros Regular
Join Date: Mar 2006
Location: United Kingdom
Posts: 413
lee101 is a jewel in the roughlee101 is a jewel in the roughlee101 is a jewel in the rough
 




Updated Version


Hi,
Here's a slightly updated version of the script I posted before, I've made it more customisable so that you can format the output however you want.
PHP Code:
<?php
/*
    Server Status Script
    Created by: Lee Findlow
    Contact:     leefindlow@gmail.com
    Website:     http://conceptsublime.com
*/

//Standard 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)
    );

//Functions
    
function ServerCheck($server 'localhost'$port '80'){
        
//Connection
        
$fp=@fsockopen($server$port$errno$errstr1);
            
//Check if connection is present
            
if($fp){
                
//Return Alive
                
return 1;
            } else{
????: NamePros.com http://www.namepros.com/showthread.php?t=271042
                
//Return Dead
                
return 0;
            }
        
//Close Connection
        
fclose($fp);
????: NamePros.com http://www.namepros.com/showthread.php?t=271042
    }

//Function to check all services in the $services array
    
function CheckAll(){
        
//Check All Services
        
global $services;
        foreach(
$services as $name => $server){
            foreach(
$server as $host => $port){
                
$status[$name] = ServerCheck($host,$port);
            }
        }
        return 
$status;
    }
    
?>
This returns the services as an array, when you use the function CheckAll().
An example usage is
PHP Code:
<?php
include('file.php');
foreach(
CheckAll() as $service => $stat){
echo 
$service.' - '.$stat.'<br />';
}
It returns 1/true if the service is online, and 0/false if it isn't

Thanks,
Lee
__________________
Linux Screenshots
lee101 is offline  
Old 01-16-2007, 02:13 PM   #9 (permalink)
 
kleszcz's Avatar
Join Date: Jul 2006
Posts: 4,609
kleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatnesskleszcz Has achieved greatness
 



Marrow Donor Program Multiple Sclerosis
Thanks Lee. Really helpful script for us. Rep added.
kleszcz is offline  
Old 01-20-2007, 08:05 AM   #10 (permalink)
DJ
Senior Member
 
DJ's Avatar
Join Date: Dec 2004
Location: .be
Posts: 1,318
DJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to beholdDJ is a splendid one to behold
 


Save a Life
Thanks Lee, i can use this one!
__________________
DomainNameNews.biz | ImageUnload.com | SurfAnySite.com | UpLoads.cc | H.TL

Online Portfolio | Names For Sale @ domainz.biz | Under Construction
DJ is offline  
Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools


 
All times are GMT -7. The time now is 03:15 PM.

Domain name forum recommended by Domaining.com Powered by: vBulletin® Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.6.0 Ad Management plugin by RedTyger