PHP: Webseiten Status mittels HTTP-Statuscode ausgeben

Für meine Status-Seite habe ich ein kleines PHP script geschrieben, dass mir dabei hilft, den Status einer Website zu ermitteln.

Dabei wird die Webseite kurz „inkludiert“ und die Headerinformationen ausgelesen. Anhand dieser Headerinformationen lässt sich dann sehen, welchen HTTP-Code die Webseite bzw. der aktuelle Aufruf abwirft.

Wie das Script im Groben aussehen könnte, siehst du hier:

header('Access-Control-Allow-Origin: *');  

// hier die urls in den array packen
$urls = array(
  'https://pixelbart.de',
  'https://klakki.me',
  'https://devhats.de',    
);

sort($urls);

if( is_array($urls) && !empty($urls) ) {

  foreach($urls as $url) {

    $handle = curl_init($url);
    curl_setopt($handle,  CURLOPT_RETURNTRANSFER, TRUE);
    $response = curl_exec($handle);
    $httpCode = curl_getinfo($handle, CURLINFO_HTTP_CODE);

    switch($httpCode) {
      case 100: /* Statuscode 100 */
      echo $url . ' - ' . $httpCode . '<br>';
      break;        
      case 101: /* Statuscode 101 */
      echo $url . ' - ' . $httpCode . '<br>';
      break;        
      case 102: /* usw... */
      echo $url . ' - ' . $httpCode . '<br>';
      break;    
      case 200:
      echo $url . ' - ' . $httpCode . '<br>';
      break;        
      case 301:
      echo $url . ' - ' . $httpCode . '<br>';
      break;        
      case 302:
      echo $url . ' - ' . $httpCode . '<br>';
      break;        
      case 401:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      case 400:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      case 404:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      case 500:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      case 502:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      case 503:
      echo $url . ' - ' . $httpCode . '<br>';
      break;
      default:
      echo $url . ' - ' . $httpCode . '<br>';        
      break;
    }
    curl_close($handle);            
  }
}

else {
  echo 'Keine URLs vorhanden!';
}

Die Ausgabe sieht dann in etwa so aus:

https://pixelbart.de – 404

Weitere HTTP-Codes findest du unter anderem auch auf Wikipedia. Dort gibt es glücklicherweise auch Erklärungen dazu.

HTTP-Codes auf Wikipedia

Du kannst jetzt noch html spans stylen und diese einfach mit in die Echos packen, um bspw. einen „deutlicheren“ Effekt für deine Besucher zu erzielen.

Damit du das Ganze auf bspw. Github mit Hilfe von jQuery .load einbinden kannst, habe ich dir direkt den header('Access-Control-Allow-Origin: *'); eingebaut.

Kevin Pliester

Kevin Pliester

Langhaarig und bärtig. Schreibt hier über WordPress, Internet, Gaming und die Selbstständigkeit. Vertreibt viel zu günstige WordPress Wartungen und ist angestellter Web-Entwickler.

Das könnte dich auch interessieren

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.