Seite 1 von 1

Server an pingen

Verfasst: 22.03.2005 01:01
von tom123456l
Hallo,

ich bräuchte ein verfahren, einen server mit php anzupingen.
ich hab was von sockets gehört, mir das ganze auch angesehen, aber irgendwie bekomme ich es selbst nicht hin....
ein tipp war, ein packet mit einer socketverbindung zu einem server zu schicken, es zu empfangen und die zeitdifferenz dazwischen zu messen...

kann mir jemand dabei helfen?

ciao
tom

Verfasst: 22.03.2005 01:24
von admin
Hallo Tom,

verwende die Funktion.

Code: Alles auswählen

<?php 

    /* 
        Ping über HTTP 

        Aktion: PHP Scripte für die armen dieser Welt 
        Der Erlös geht für mein Pausenbrot drauf 

        Copyright (c) 2005 by Phillip 'Firebird' Berndt 
        
        
        Da man ICMP aus PHP heraus nicht verwenden 
        kann und echod(7) auf den meisten Servern 
        deaktiviert ist, verwendet diese Funktion 
        das HTTP Protokoll zur Zeitmessung. 
        Eventueller Load des Servers wird hier nicht 
        berücksichtigt!!! 
    */ 

    function ping($server, $count = 5, $debug = false) 
    { 
        $timeNeeded = 0; 
        for($i=0;$i<$count;$i++) 
        { 
            if($debug) 
                echo('Ping '.$server.' '.$i.' (Sending 18 bytes) '); 
            $socket = @fsockopen($server, 80, &$errno, &$errstr, 3); 
            if(!$socket) return false; 
            fwrite($socket, "GET / HTTP/1.1\r\n\r\n"); 
            $start = microtime(true); 
            fgetc($socket); 
            $duration = microtime(true) - $start; 
            if($debug) 
                echo($duration.' s'."<br/>\n"); 
            fclose($socket); 
            $timeNeeded += $duration; 
            if($debug) 
                flush(); 
        } 
        $timeNeeded /= $count; 
        
        return round($timeNeeded, 3); 
    } 
    
    echo('Ping zu Cgiforum: '.ping('www.cgiforum.de').' s'); 
    
?>
mfg. Nico

Verfasst: 06.05.2005 19:44
von Milch-Schnitte
Fals du nochmal vorbeischauen solltest, könnte es nicht auch über die eingabeaufforderung gehen mit "ping XXX.XXX.XXX.XXX" ?!

Verfasst: 10.05.2005 14:58
von admin
Milch-Schnitte hat geschrieben:Fals du nochmal vorbeischauen solltest, könnte es nicht auch über die eingabeaufforderung gehen mit "ping XXX.XXX.XXX.XXX" ?!
Nun ja, mit den Script Code kann man ein Online Tool auf seiner Homepage anbieten.

mfg. Nico