Sobes.tech
Middle

Ի՞նչ է տեղի ունենում հարցման հետ այնուհետև, երբ այն մուտքագրվում է հասցեագրման տողում։

sobes.tech AI

Պատասխան AI-ից

  1. Դոմենային անուն: Բրաուզերը որոշում է սերվերի IP-հասցեն DNS լուծիչի միջոցով (բրաուզերի cache, OS cache, hosts ֆայլ, DNS սերվերներ):
  2. TCP կապի հաստատում: Բրաուզերը հաստատում է կապ սերվերի հետ ստացված IP-հասցեով և պորտով (հատկապես 80 HTTP-ի համար, 443 HTTPS-ի համար):
  3. HTTP հարցում ուղարկում: Բրաուզերը ձևավորում և ուղարկում է HTTP հարցում (GET, POST և այլն), որը պարունակում է մեթոդը, URL-ը, գլխագրերը (օրինակ, User-Agent, Referer, Cookie) և հնարավոր է՝ հարցման մարմինը (օրինակ, POST-ի համար):
  4. Հարցի մշակումը սերվերում: Սերվերը ընդունում է հարցումը, վեբ սերվերը (Apache, Nginx և այլն) որոշում է մշակողին (օրինակ, PHP-FPM): PHP ինտերպրետատորը գործարկում է սցենարը:
  5. PHP սցենարի գործարկում: PHP սցենարը մշակում է հարցումը՝ միանալով տվյալների բազային, իրականացնելով տրամաբանությունը, գեներացնելով HTML էջ կամ այլ տվյալներ:
    // Օրինակ PHP սցենարի գործարկում սերվերում
    <?php
    
    // Տվյալների բազային միացում
    $conn = new mysqli("localhost", "user", "password", "dbname");
    
    // Միացման ստուգում
    if ($conn->connect_error) {
        die("Միացման սխալ: " . $conn->connect_error);
    }
    
    // Հարցում կատարում
    $sql = "SELECT * FROM users WHERE id = 1";
    $result = $conn->query($sql);
    
    // Արդյունքների մշակումը
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            echo "Բարև, " . $row["name"];
        }
    } else {
        echo "Օգտագործողը չի գտնվել.";
    }
    
    // Միացման փակումը
    $conn->close();
    
    ?>
    
  6. HTTP պատասխան կազմելը: PHP սցենարը և վեբ սերվերը ձևավորում են HTTP պատասխան, որը ներառում է վիճակային կոդ (օրինակ, 200 OK, 404 Not Found), գլխագրեր (Content-Type, Content-Length և այլն) և պատասխան մարմինը (հատկապես HTML):
  7. HTTP պատասխան ուղարկում: Սերվերը ուղարկում է HTTP պատասխանն վերադառնալով բրաուզերին՝ օգտագործելով հաստատված TCP կապը:
  8. Պատասխան ստացում և մշակում: Բրաուզերը ստանում է պատասխան, վերլուծում է գլխագրերը, որոշում է բովանդակության տեսակը և ցուցադրում էջը օգտվողին, կատարում է սցենարներ (JavaScript), բեռնում լրացուցիչ ռեսուրսներ (CSS, պատկերներ):
  9. TCP կապի կտրում: Կապը սովորաբար փակվում է պատասխան ստանալուց հետո, եթե չեն օգտագործվում կապի պահպանման մեխանիզմներ (keep-alive):