In questi giorni mi è capitato di realizzare un piccolo script per verificare se una pagina internet interna o esterna ad un determinato dominio, restituisse un header corretto o non corretto. Ho ritenuto che una tale funzione potesse risultare utile ad ogni Programmatore PHP e quindi ne presento una versione decisamente ridotta.
Quando consultiamo un sito, o meglio quando inoltriamo ad un browser (Internet Explorer, Firefox e affini) la richiesta di una determinata pagina o di un sito, il Server HTTP risponde inoltrandoci il risultato e restituendoci un header con un indicazione chiamata Status che informano il client sull'esito della richiesta.
Prima di tutto elenchiamo quelli che sono gli status più comuni restituiti dai server:
# 200 OK
# 301 Moved Permanently (Spostato in modo permanente)
# 307 Temporary Redirect (Reindirizzamento momentaneo)
# 400 Bad Request 400 (Richiesta non valida)
# 403 Forbidden (Pagina Interdetta)
# 404 Not Found (Pagina non trovata)
# 500 Internal Server Error (Errore interno del server)
Di seguito invece illusto la funzione ridotta, che con le opportune modifiche può risultare utile per verificare indici e collegamenti esterni al proprio sito, monitorare status o redirect 301 e per molti altri usi.
La funzione che mette a disposizione PHP 5 è get_headers() tale funzionalità non è disponibile nelle versione precedenti in cui sarà necessario creare una funzione ad hoc che magari vi illustrerò in qualche post successivo.
Come possiamo notare la funzione preg_match che valuta l'espressione regolare, considera validi (o esistenti) solo i link 200 e 301, qualsiasi Programmatore può però modificare tale espressione, includendo o escludento i diversi status.
.Nessun commento Presente.