Sobes.tech
Middle

Čo sa deje s požiadavkou po jej zadaní do adresného riadku?

sobes.tech AI

Odpoveď od AI

  1. Domenové meno: Prehliadač určuje IP adresu servera pomocou DNS resolvera (cache prehliadača, cache OS, súbor hosts, DNS servery).
  2. Nastavenie TCP spojenia: Prehliadač nadviaže spojenie so serverom na základe získanej IP adresy a portu (zvyčajne 80 pre HTTP, 443 pre HTTPS).
  3. Odoslanie HTTP požiadavky: Prehliadač vytvorí a odošle HTTP požiadavku (GET, POST atď.), ktorá obsahuje metódu, URL, hlavičky (napríklad User-Agent, Referer, Cookie) a prípadne telo požiadavky (napríklad pre POST).
  4. Spracovanie požiadavky na serveri: Server prijme požiadavku, webový server (Apache, Nginx atď.) určí spracovateľa (napríklad PHP-FPM). PHP interpretátor spustí skript.
  5. Spustenie PHP skriptu: PHP skript spracuje požiadavku: pripojí sa k databáze, vykoná logiku, vygeneruje HTML stránku alebo iné dáta.
    // Príklad spustenia PHP skriptu na serveri
    <?php
    
    // Pripojenie k databáze
    $conn = new mysqli("localhost", "user", "password", "dbname");
    
    // Kontrola pripojenia
    if ($conn->connect_error) {
        die("Chyba pripojenia: " . $conn->connect_error);
    }
    
    // Vykonanie dotazu
    $sql = "SELECT * FROM users WHERE id = 1";
    $result = $conn->query($sql);
    
    // Spracovanie výsledkov
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            echo "Ahoj, " . $row["name"];
        }
    } else {
        echo "Používateľ nenajdený.";
    }
    
    // Uzavretie spojenia
    $conn->close();
    
    ?>
    
  6. Vytvorenie HTTP odpovede: PHP skript a webový server vytvoria HTTP odpoveď, ktorá obsahuje stavový kód (napríklad 200 OK, 404 Not Found), hlavičky (Content-Type, Content-Length atď.) a telo odpovede (zvyčajne HTML).
  7. Odoslanie HTTP odpovede: Server odošle HTTP odpoveď späť prehliadaču cez nadviazané TCP spojenie.
  8. Prijatie a spracovanie odpovede: Prehliadač prijme odpoveď, analyzuje hlavičky, určí typ obsahu a zobrazí stránku používateľovi, vykoná skripty (JavaScript), načíta ďalšie zdroje (CSS, obrázky).
  9. Ukončenie TCP spojenia: Spojenie sa zvyčajne zatvorí po obdržaní odpovede, ak nie sú použité mechanizmy udržiavania spojenia (keep-alive).