Come elabora il browser l'input dell'URL nella barra degli indirizzi?
Quando apriamo un determinato URL nel browser, come carica e visualizza il contenuto il browser? Mostriamo cosa ha fatto il browser a turno, secondo l'ordine in cui si verifica l'evento.
Oltre a qualche specifica navigazione web con app native personalizzate durante la navigazione su diverse pagine web, la maggior parte delle pagine web viene navigata con un browser. Quindi, quando apriamo un determinato URL nel browser, come carica e visualizza il contenuto il browser? Mostreremo cosa ha fatto il browser a turno, secondo l'ordine in cui si verifica l'evento.
L'utente inserisce l'URL nel browser
Nel nostro precedente post del blog abbiamo trattato i componenti dell'URL, inclusi quelli conosciuti come host/dominio, ad es. www.google.com
blog.logto.io
ecc.
Ricerca dell'indirizzo IP utilizzando host/dominio
Il browser non può comprendere direttamente l'host/dominio e trovare le risorse corrispondenti, ma deve conoscere l'indirizzo IP specifico per individuare la posizione delle risorse richieste per le pagine web.
Il browser troverà l'indirizzo IP corrispondente all'host/dominio tramite il sistema dei nomi di dominio (DNS).
Per rendere il processo di ricerca di indirizzi IP il più veloce possibile, la corrispondenza tra host/dominio e indirizzo IP spesso utilizza varie cache, come la cache del browser, la cache del sistema operativo, e così via.
Quando la ricerca nella cache fallisce, passiamo attraverso il normale processo di lookup DNS per trovare l'indirizzo IP di un host/dominio. Questi sono i passaggi:
- Quando un utente inserisce
blog.logto.io
nel browser web, il browser web richiede il servizio DNS per ottenere l'indirizzo IP, la query corrispondente viene ricevuta dal risolutore DNS - Il risolutore DNS interroga il server root DNS (.)
- Il server root restituisce un indirizzo corrispondente a un server DNS di dominio di primo livello (TLD) (
.io
in questo caso) e alcune informazioni associate - Il risolutore DNS interroga il server TLD
.io
- Il server TLD
.io
risponde con l'indirizzo del nameserverlogto.io
- Il risolutore DNS richiede il nameserver del dominio
logto.io
- Il nameserver del dominio
logto.io
risponde con l'indirizzo diblog.logto.io
- Il risolutore DNS inoltra l'indirizzo IP di
blog.logto.io
al browser web
Il browser web può quindi richiedere le risorse corrispondenti al server e visualizzare il sito web per l'utente.
Stabilire la connessione TCP
Dopo aver ottenuto l'indirizzo IP corrispondente al dominio da navigare tramite il servizio DNS, il browser web avvia e stabilisce una connessione TCP con il server.
Ottenere risorse e visualizzare le pagine web
Dopo aver stabilito una connessione TCP, il browser avvia una richiesta di rete al server, ottiene le risorse corrispondenti e visualizza il contenuto della pagina web in base alle risorse ottenute per l'utente.