Tarayıcı adres çubuğuna girilen URL'yi nasıl işler?
Belirli bir URL'yi tarayıcıda açtığımızda, tarayıcı içeriği nasıl yükler ve gösterir? Olayın gerçekleşme sırasına göre tarayıcının ne yaptığını gösteriyoruz.
Özelleştirilmiş yerel uygulamalarla belirli web sayfalarını tarayıcı olmadan ziyaret etmek dışında, çoğu web sayfası bir tarayıcı ile ziyaret edilir. Dolayısıyla, belirli bir URL'yi tarayıcıda açtığımızda, tarayıcı içeriği nasıl yükler ve gösterir? Olayın gerçekleşme sırasına göre tarayıcının ne yaptığını göstereceğiz.
Kullanıcı tarayıcıya URL girer
Önceki blog yazımızda host/domain olarak bilinen URL bileşenlerini, örneğin www.google.com
, blog.logto.io
vb. konularını ele almıştık.
Host/domain kullanarak IP adresi sorgulama
Tarayıcı host/domain'i doğrudan anlayamaz ve ilgili kaynakları bulamaz, bu nedenle web sayfaları için gereken kaynakların yerini belirlemek amacıyla belirli IP adresini bilmesi gerekir.
Tarayıcı, domain adı sistemi (DNS) aracılığıyla host/domain'e karşılık gelen IP adresini bulur.
IP adreslerini arama sürecini olabildiğince hızlı hale getirmek için, host/domain ve IP adresi arasındaki ilişki genellikle çeşitli önbellekler kullanılarak saklanır, örneğin tarayıcı önbelleği, işletim sistemi önbelleği vb.
Önbellek araması başarısız olduğunda, bir host/domain'in IP adresini bulmak için düzenli DNS sorgulama sürecinden geçeriz. İşte bu sürecin adımları:
- Bir kullanıcı web tarayıcısına
blog.logto.io
girdiğinde, web tarayıcısı DNS servisine IP adresini almak için bir istek gönderir ve bu istek DNS çözücüsü tarafından karşılanır - DNS çözücüsü DNS kök sunucusuna sorgu yapar (.)
- Kök sunucu, bir Üst Düzey Alan (TLD) DNS sunucusunu (
.io
bu durumda) ve ilgili bazı bilgileri döner - DNS çözücüsü
.io
TLD sunucusuna sorgu yapar .io
TLD sunucusulogto.io
isim sunucusu adresini döner- DNS çözücüsü
logto.io
domain isim sunucusuna istek gönderir logto.io
domain isim sunucusublog.logto.io
adresini döner- DNS çözücüsü
blog.logto.io
IP adresini web tarayıcısına iletir
Web tarayıcısı daha sonra sunucudan ilgili kaynakları isteyebilir ve kullanıcıya görüntülemesi için web sitesini render edebilir.
TCP bağlantısı kur
DNS hizmeti aracılığıyla gezilecek domain'e karşılık gelen IP adresini aldıktan sonra, web tarayıcısı sunucu ile bir TCP bağlantısı başlatır ve kurar.
Kaynakları edin ve web sayfalarını render et
TCP bağlantısı kurulduktan sonra, tarayıcı sunucuya bir ağ isteği gönderir, ilgili kaynakları alır ve alınan kaynaklara dayanarak web sayfası içeriğini kullanıcı için render eder.