Realizzazione di un Check Server Headers con PHP5 per utilizzare le risposte e gli Status utilizzando la funzione get_headers | Programmatore PHP Freelance di Napoli per Sviluppo Siti Internet
Status e URL Valide con PHP 5 e get_headers();
Scritto da: Daniele Tabacco | Categoria: Script PHP|commenti Commenti: (0)

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.

<?php
//Funzione che verifica lo status 200 o 301 di una determinata URL
function esistenza($url){
//Utilizzo la funzione ricevento un array che definisce l'header
$headers = get_headers("$url");
//Nel primo campo dell'array è presente lo status che confronto con espressione regolare
$esiste = preg_match('#^HTTP/.*\s+[(200|301)]+\s#i', $headers[0]);
if($esiste==1)
echo "La URL $url risponde correttamente ($headers[0])";
else
echo "La URL $url non risponde correttamente";
echo "<br/>";
}
$url_uno = 'http://www.danieletabacco.com';
$url_due = 'http://www.linkerrato.com';
esistenza("$url_uno");
esistenza("$url_due");
?>

(Guarda l'esempio)

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.

Commenti:
.Nessun commento Presente.









Captcha
Copia i caratteri che vedi sopra:

Tags: | torna su


linkedIn


Contattami su Skype:
Il mio stato

Archivio Articoli:
Semplice Script Base per Realizzare un semplice carrello elettronico con Javascript
Perchè creare la Pagina Facebook della propria attività
Leggere una directory con PHP
Scegliere come Consulente un Programmatore PHP Freelance
Leggere XML con PHP
Php su Mac Apple
Selezionare più righe da una tabella utilizzando MySQL.
Status e URL Valide con PHP 5 e get_headers();
Guida alle Join di MySQL
Programmatore PHP e Programmazione ad Oggetti.
Un semplice esempio di AJAX
Creazione una Select Dinamica con Javascript
Scegliere un CMS Open Source per il proprio progetto.
Realizzare un Codice Captcha
Perchè Scegliere PHP? Perchè Programmatore PHP?
Restyling di un Applicazione o Portale Web con PHP

Cerchi un Programmatore PHP con esperienza consolidata, già molte aziende a Napoli, Milano, Roma e Ferrara si sono affidate a me. Contattami per una Consulenza Gratuita, per Realizzare Applicazioni Web o Sviluppare Siti Internet e Creare Portali Dinamici.

Risorse utili per PHP:

Partners & Consigliati:

NGMWeb Hosting & Servizi

MioMotore Directory Gratis

ADServer Gestione Banner


Nuove Collaborazioni:

cocreando
 
Daniele Tabacco - Questo sito e' interamente realizzato da me secondo gli standard del W3C - css valido w3c css valido xhtml