Erweitert wurde das irgendwann mal um auch FTP-Server zu testen, aber genug der Worte, hier das Script.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
/**
 * Onlinecheck
 *
 * Funktion zur Überprüfung ob ein Host
 * auf einem bestimmten Port antwortet
 *
 * @param str $url      - Zieladresse
 * @param str $proto    - Protokoll (Dieses ist in der Variable als Array angelegt
 *                                   und kann somit leicht erweitert werden)
 * @param str $good     - Meldung wenn Host auf dem Port erreichbar
 * @param str $bad      - Meldung wenn Host auf dem Port nicht erreichbar
 * @return str          - Rückgabe
 *
 * Beispiel:
 *          $check = onlineCheck('http://domain.tld', 'http', 'online', 'offline');
 *          echo $check;
 */

function onlineCheck($url, $proto, $good, $bad) {
    $protokoll  = array(
        'http'  => '80',
        'ftp'   => '21'
    );
    $url        = str_replace('http://', '', $url);
    $url        = str_replace('https://', '', $url);
    $fp         = @fsockopen($url, $protokoll[$proto]);

    if (!$fp) {
        return $bad;
    } else {
        fclose($fp);
        return $good;
    }
}
?>

Achtung:
!!! Verwendung auf eigene Gefahr !!!

Schreibe einen Kommentar

Ihre Email-Adresse wird nicht veröffentlicht. Pflichtfelder sind durch * markiert.

Sie können folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>