Perchè non mi funziona più la variabile: $_SERVER['HTTP_HOST']?

Salve a tutti,

nel mio software ho scritto $URL = $_SERVER['HTTP_HOST']; per recuperare l'intero URL scritto dall'utente nella barra degli URLs ma non funziona più, mi restituisce esclusivamente il nome del dominio.

Prima potevo usare il sistema codice.dominio.it e recuperare la parola "codice" per elaborarla secondo certi criteri. Ora non funziona più.

Qualcuno mi può aiutare per favore?

Grazie mille

inviato 9 anni fa
ulisse
X 0 X

Ma HTTP_HOST restituisce solo il nome dell'HOST  :dunno: potresti usare REQUEST_URI per avere il resto dell'URL richiesto.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Beh ma come faceva a funzionare prima?  :buck:

un utente scrive:

codice.dominio.it

come recupero la parola codice?

risposto 9 anni fa
ulisse
X 0 X

perché non provi ad usare un semplice:

print_r($_SERVER);

ti verranno mostrate tutte le informazioni disponibili.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Grazie Gianni ho trovato la variabile: HTTP_X_FORWARDED_HOST ed ho ovviato così:

if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
   $URL = $_SERVER['HTTP_X_FORWARDED_HOST'];
}else{
   $URL = $_SERVER['HTTP_HOST'];
}

Credi sia una giusta soluzione?

Grazie

risposto 9 anni fa
ulisse
X 0 X

HTTP_X_FORWARDED_HOST si usa quando c'è un proxy server che si frappone tra il client ed il server, nel qual caso HTTP_HOST restituisce un risultato errato.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Non ho ben capito la storia del proxy. Che vuol dire? Come faccio a capire la velocità di risposta del mio sito internet?

risposto 9 anni fa
ulisse
X 0 X

Non vedo come la "velocità" sia legata a questo discorso. Quì si parla semplicemente di informazioni che il server web presenta a PHP sotto forma di array $_SERVER. Alcune di queste informazioni possono cambiare a seconda della strada che ha percorso la richiesta dell'utente per raggiungere il server. Tutto quì.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda