Come fanno i server Web a sapere se si sta utilizzando l'accesso diretto all'indirizzo IP o no?

how-do-web-server-so-se-si-sta-utilizzando-diretta-indirizzo-ip-access-o-no-00

Di solito, digitiamo semplicemente l'indirizzo di un sito Web che vogliamo visualizzare, ma un server Web “saprebbe” effettivamente se invece utilizzassimo l'indirizzo IP diretto? Il post di domande e risposte di SuperUser di oggi ha la risposta alla domanda di un lettore confuso.

La sessione di domande e risposte di oggi ci viene fornita da SuperUser, una suddivisione di Stack Exchange, un raggruppamento di siti Web di domande e risposte guidato dalla community.

Foto per gentile concessione di Cory M. Grenier (Flickr).

La domanda

Il lettore SuperUser Joseph A. desidera sapere come i server Web possono sapere se si sta utilizzando o meno l'accesso diretto all'indirizzo IP:

Alcuni server Web, quando si accede utilizzando il proprio indirizzo IP, restituiscono un errore che non è consentito l'accesso diretto all'indirizzo IP. Mi chiedo da tempo come funziona.

Un browser risolve sempre l'indirizzo IP e si connette ad esso? L'accesso diretto agli indirizzi IP sta semplicemente saltando del tutto il DNS, giusto? Come fa un server remoto a sapere che hai saltato il DNS?

Come fanno i server Web a sapere se si sta utilizzando l'accesso diretto all'indirizzo IP o no?

La risposta

Collaboratore SuperUser iAdjunct ha la risposta per noi:

Per rispondere alla tua domanda su come sa, ha a che fare con ciò che il tuo browser invia al web server. Hai ragione che il sistema lo risolve sempre in un indirizzo IP, ma il browser invia l'URL a cui hai tentato di accedere nell'intestazione HTTP.

Ecco un esempio di intestazione che ho trovato online, modificato per sembrare che tu abbia usato Firefox su Windows e digitato apple.com nella barra degli indirizzi:

how-do-web-server-so-se-si-sta-utilizzando-diretta-indirizzo-ip-access-o-no-01

Ecco come sarebbe l'intestazione se si usasse il suo indirizzo IP:

how-do-web-server-so-se-si-sta-utilizzando-diretta-indirizzo-ip-access-o-no-02

Entrambi questi verrebbero inviati allo stesso indirizzo IP su un socket, ma il browser comunica al server Web a cosa ha avuto accesso. Perché? Poiché i server Web con lo stesso indirizzo IP possono ospitare più siti Web e fornire pagine diverse per ognuno. Non è in grado di distinguere chi desidera quale pagina in base all'indirizzo IP perché hanno tutte la stessa, ma può distinguerli dall'intestazione HTTP.


Hai qualcosa da aggiungere alla spiegazione? Audio disattivato nei commenti. Vuoi leggere altre risposte da altri utenti esperti di Stack Exchange? Dai un'occhiata al thread completo di discussione qui.

Articoli correlati

Ultimi articoli