Tarayıcı Sözlüğü

Web Tarayıcısı Nedir ve Nasıl Çalışır

Adres çubuğuna bir alan adı yazıp Enter'a bastığınızda, gözünüzün fark edemeyeceği kadar kısa bir sürede onlarca farklı işlem sırayla yürütülür: ad çözümleme, bağlantı kurma, şifreleme anlaşması, veri indirme, kod ayrıştırma ve ekrana çizim. Tarayıcı nedir nasıl çalışır sorusunun cevabı, bu zincirin her halkasını tek tek görmekten geçer. Aşağıda süreci baştan sona, ölçülebilir parçalara ayırarak inceliyoruz.

Web Tarayıcısı Tam Olarak Nedir?

Web tarayıcısı, sunucularda duran metin dosyalarını (HTML, CSS, JavaScript) alıp bunları görsel bir arayüze dönüştüren bir çeviri katmanıdır. Bir kelime işlemciye benzemez; daha çok, aynı anda birden fazla dili yorumlayan bir motorlar topluluğudur. Her tarayıcı temelde dört bileşenden oluşur:

Piyasadaki tarayıcıların çoğu aynı arayüzü sunsa da, motor tarafında üç aileye ayrılır:

Motor JavaScript Motoru Kullanan Tarayıcılar
Blink V8 Chrome, Edge, Opera, Brave
Gecko SpiderMonkey Firefox
WebKit JavaScriptCore Safari

Bu ayrım pratikte şu anlama gelir: Chrome'da doğru görünen bir sayfa Safari'de farklı davranabilir, çünkü aynı standardı iki farklı ekip yorumlamıştır. Popüler tarayıcıların özelliklerini karşılaştıran içeriklerde bu motor farkı çoğu uyumsuzluğun kök nedenidir.

Bir Sayfa Adım Adım Nasıl Yüklenir?

  1. URL çözümlemesi: Tarayıcı yazdığınız metni parçalara ayırır: protokol (https), alan adı, yol ve sorgu. Yazdığınız şey geçerli bir alan adına benzemiyorsa varsayılan arama motoruna yönlendirir.
  2. DNS sorgusu: Alan adının hangi IP adresine karşılık geldiği öğrenilir. Bu bilgi genelde işletim sisteminde ve tarayıcıda kısa süreliğine saklanır; bu yüzden ikinci ziyaret ilkinden hızlıdır.
  3. TCP bağlantısı ve TLS anlaşması: Sunucuyla bağlantı kurulur, HTTPS kullanılıyorsa sertifika doğrulanır ve şifreleme anahtarları belirlenir. Adres çubuğundaki kilit simgesi tam olarak bu adımın başarıyla tamamlandığını gösterir.
  4. HTTP isteği: Tarayıcı "GET /" benzeri bir istek gönderir; yanında hangi dilleri kabul ettiğini, hangi tarayıcı olduğunu ve varsa çerezleri iletir.
  5. HTML'in indirilmesi ve ayrıştırılması: Gelen metin yukarıdan aşağıya okunur ve DOM ağacı denen hiyerarşik bir yapıya dönüştürülür. Her etiket bu ağaçta bir düğüm olur.
  6. Alt kaynakların çekilmesi: HTML içinde CSS, resim, yazı tipi ve betik bağlantıları görüldükçe yeni istekler açılır. Modern tarayıcılar bunları paralel indirir, ancak aynı anda açılabilecek bağlantı sayısı sınırlıdır.
  7. CSSOM ve düzen hesabı: Stil kuralları ayrı bir ağaca dönüştürülür, DOM ile birleştirilir ve her öğenin ekranda kaplayacağı kutu hesaplanır. Bu aşamaya layout denir.
  8. Boyama ve birleştirme: Katmanlar piksellere çevrilir, ekran kartı desteğiyle birleştirilerek gösterilir.
  9. JavaScript çalıştırma: Betikler DOM'u değiştirebilir; her değişiklik düzen ve boyama adımlarının kısmen tekrarlanmasına yol açar. Ağır betikler bu yüzden sayfayı "donmuş" gösterir.
  10. Önbelleğe alma: Sunucunun izin verdiği kaynaklar diske kaydedilir. Bir sonraki ziyarette ağ trafiği yerine yerel kopya kullanılır; önbellek temizliğinin neden zaman zaman gerektiği de buradan anlaşılır.

Sık Yapılan Hatalar

Tarayıcıyı arama motoruyla karıştırmak

En yaygın kavram karışıklığı budur. Tarayıcı bilgisayarınızda kurulu bir programdır; arama motoru ise o programla ziyaret ettiğiniz bir web hizmetidir. Tarayıcıyı değiştirmeden arama motorunu, arama motorunu değiştirmeden tarayıcıyı değiştirebilirsiniz.

Yavaşlığın nedenini hep internete yüklemek

Sayfa geç açılıyorsa suçlu her zaman bağlantı hızı değildir. Şişmiş bir önbellek, arka planda çalışan onlarca uzantı, ağır JavaScript dosyaları veya sunucunun yanıt gecikmesi de aynı sonucu üretir. Test yöntemi basittir: aynı sayfayı gizli pencerede (uzantılar devre dışıyken) açın ve süreyi karşılaştırın.

Gizli pencereyi anonimlik sanmak

Gizli mod yalnızca yerel kayıtları (geçmiş, çerez, form verisi) oturum sonunda siler. İnternet servis sağlayıcınız, işyeri ağınız ve ziyaret ettiğiniz site sizi görmeye devam eder.

Sertifika uyarılarını geçmek

Diğer yazılar