Monitoraggio Uptime del Sito Web con PHP

In questo articolo, ti mostreremo come creare uno script PHP per monitorare l’uptime del tuo sito web. Questo script ti avviserĂ  via email ogni volta che il tuo sito non sarĂ  raggiungibile, permettendoti di intervenire rapidamente per risolvere il problema.

Codice dello Script

Ecco lo script PHP che puoi utilizzare per monitorare l’uptime del tuo sito:

<?php

// Configurazione delle variabili
$website = "http://tuosito.com";
$email = "tuo@email.com";
$timeout = 10;

// Funzione per controllare l'uptime
function checkUptime($url, $timeout) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
    curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    return $httpCode;
}

// Verifica lo stato del sito
$httpCode = checkUptime($website, $timeout);

// Invia una notifica via email se il sito non Ăš raggiungibile
if ($httpCode != 200) {
    $subject = "Allarme: Il sito $website non Ăš raggiungibile!";
    $message = "Il sito $website ha risposto con il codice HTTP $httpCode.";
    $headers = "From: monitor@$website";
    mail($email, $subject, $message, $headers);
}

?>

Spiegazione Dettagliata del Codice

1. Configurazione delle Variabili

All’inizio dello script, configuriamo tre variabili principali:

  • $website: Inserisci l’URL del sito web che desideri monitorare.
  • $email: Specifica l’indirizzo email a cui desideri ricevere le notifiche.
  • $timeout: Imposta il tempo massimo di attesa per la risposta del server (in secondi).

2. La Funzione checkUptime

Questa funzione utilizza cURL per inviare una richiesta al sito web specificato. Restituisce il codice HTTP che indica lo stato della richiesta.

function checkUptime($url, $timeout) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
    curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
    return $httpCode;
}

3. Verifica dello Stato del Sito

Dopo aver ottenuto il codice HTTP, lo script verifica se il codice Ăš diverso da 200, che indica un sito raggiungibile e funzionante. Se il codice Ăš diverso, viene inviata una notifica via email.

Guida Passo-Passo per l’Esecuzione dello Script

  1. Crea un nuovo file PHP sul tuo server, ad esempio monitor.php.
  2. Copia e incolla il codice fornito nel file.
  3. Modifica le variabili $website e $email con i tuoi dati.
  4. Salva il file e caricalo sul tuo server.
  5. Per eseguire lo script, accedi all’URL del file nel tuo browser (ad esempio, http://tuosito.com/monitor.php).
Nota: Assicurati che il tuo server di posta elettronica sia configurato correttamente affinchĂ© l’invio delle email funzioni.

Conclusione

Utilizzando questo semplice script PHP, puoi monitorare l’uptime del tuo sito web e ricevere notifiche immediate in caso di problemi. Questo ti permetterĂ  di intervenire prontamente e minimizzare i tempi di inattivitĂ  del tuo sito.

 

author avatar
Simone-Cirone