Sobes.tech
Middle

Co se stane, když do prohlížeče zadáte adresu, například google.com?

sobes.tech AI

Odpověď od AI

  1. Analýza URL: Prohlížeč rozděluje URL na složky: protokol (HTTP/HTTPS), doménové jméno (google.com) a cestu (/).

  2. Hledání IP adresy:

    • Prohlížeč kontroluje svůj DNS cache.
    • Operační systém kontroluje svůj DNS cache.
    • Systém požádá DNS server (obvykle poskytovatelem).
    • DNS server provádí rekurzivní dotazy na kořenové, TLD a autoritativní DNS servery, dokud nenajde IP adresu google.com.
    • IP adresa je vrácena prohlížeči.
  3. Navázání TCP spojení:

    • Prohlížeč naváže TCP spojení se serverem na nalezené IP adrese pomocí třífázového handshake (SYN, SYN-ACK, ACK).
  4. SSL/TLS handshake (pro HTTPS):

    • Klient a server se dohodnou na šifrovacích algoritmech.
    • Server odešle svůj certifikát.
    • Prohlížeč ověří certifikát.
    • Strany si vymění šifrovací klíče pro zabezpečenou komunikaci.
  5. Odeslání HTTP požadavku: Prohlížeč odešle HTTP požadavek na server, obsahující metodu (GET), cestu, hlavičky (Host, User-Agent, Accept atd.) a případně tělo požadavku.

    GET / HTTP/1.1  
    Host: google.com  
    User-Agent: Mozilla/5.0 (...)  
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8  
    
  6. Zpracování požadavku serverem:

    • Server přijme požadavek.
    • Server požadavek zpracuje (například provede logiku aplikace).
    • Server vygeneruje HTTP odpověď.
  7. Přijetí HTTP odpovědi: Prohlížeč obdrží HTTP odpověď od serveru, obsahující stavový kód (například 200 OK), hlavičky (Content-Type, Content-Length atd.) a tělo odpovědi (HTML stránka, obrázky, CSS, JS atd.).

    HTTP/1.1 200 OK  
    Content-Type: text/html; charset=UTF-8  
    Content-Length: XXXX  
    ...  
    
    <!doctype html>...  
    
  8. Zobrazování stránky:

    • Prohlížeč začne analyzovat HTML kód.
    • Při detekci odkazů na CSS, JavaScript nebo obrázky, prohlížeč provádí další požadavky na jejich získání (kroky 2-7 se opakují pro každý zdroj).
    • Prohlížeč sestavuje DOM strom (Document Object Model) z HTML.
    • Prohlížeč sestavuje CSSOM strom (CSS Object Model) z CSS.
    • Prohlížeč sestavuje render strom, kombinováním DOM a CSSOM.
    • Prohlížeč spouští JavaScript (který může měnit DOM a CSSOM).
    • Prohlížeč vypočítává rozložení prvků na stránce (Layout).
    • Prohlížeč vykresluje prvky na obrazovku (Painting).