Home Php La variabile $_SERVER

La variabile $_SERVER[‘HTTP_REFERER’]

211
0

La variabile $_SERVER[‘HTTP_REFERER’] in PHP è una variabile superglobale che contiene l’URL della pagina di provenienza (referrer) da cui è stato effettuato il collegamento alla pagina corrente. In altre parole, è utilizzata per sapere da quale pagina web un utente è arrivato a una determinata pagina.
Come funziona?

Quando un browser invia una richiesta HTTP, include un’intestazione chiamata Referer (notare l’ortografia, che è tecnicamente un errore nel protocollo HTTP). Questa intestazione specifica l’URL della pagina precedente da cui proviene l’utente. PHP utilizza questa intestazione per popolare il valore di $_SERVER[‘HTTP_REFERER’].

Esempio di codice:

if (isset($_SERVER['HTTP_REFERER'])) {
    echo "Sei arrivato da: " . $_SERVER['HTTP_REFERER'];
} else {
    echo "Non c'è un referrer.";
}

Limitazioni e considerazioni importanti

Non sempre disponibile: Non tutti i browser o client inviano l’intestazione Referer, e alcuni utenti o proxy possono configurare il blocco di questa intestazione per motivi di privacy. Di conseguenza, $_SERVER[‘HTTP_REFERER’] potrebbe non essere sempre settata o contenere un valore vuoto.

Affidabilità: Poiché il valore della variabile è basato su un’intestazione HTTP, non è affidabile al 100%. Può essere manipolata facilmente da un utente malintenzionato. Per questo motivo, non deve mai essere utilizzata per scopi critici, come la gestione della sicurezza o il controllo degli accessi.

Protezione dei dati sensibili: Se utilizzata per registrare informazioni o per costruire URL, bisogna assicurarsi che non venga mai usata per mostrare o trasmettere dati sensibili.

Dipendenza dalla configurazione del server: In alcuni casi, i server o firewall possono bloccare o filtrare l’intestazione Referer, rendendo inutile il suo utilizzo.

Utilizzi comuni

Reindirizzamenti: Può essere usata per reindirizzare l’utente alla pagina da cui proviene, ad esempio dopo un’azione come l’accesso o la compilazione di un modulo.

    if (isset($_SERVER['HTTP_REFERER'])) {
        header("Location: " . $_SERVER['HTTP_REFERER']);
    } else {
        header("Location: /default-page.php");
    }

Statistiche: È comunemente utilizzata per tracciare la provenienza del traffico su un sito web.

Analisi di comportamento: Può essere usata per comprendere i percorsi di navigazione degli utenti su un sito.

Conclusione

$_SERVER[‘HTTP_REFERER’] è uno strumento utile, ma la sua limitata affidabilità e le potenziali vulnerabilità di sicurezza ne limitano l’applicazione. Se lo usi, tieni sempre a mente queste limitazioni e non fare affidamento su di esso per operazioni critiche.

Previous articleCreare un cerca in php
Next articleistanza classe wpdb

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.