Middle
Ի՞նչ է տեղի ունենում հարցման հետ այնուհետև, երբ այն մուտքագրվում է հասցեագրման տողում։
sobes.tech AI
Պատասխան AI-ից
- Դոմենային անուն: Բրաուզերը որոշում է սերվերի IP-հասցեն DNS լուծիչի միջոցով (բրաուզերի cache, OS cache, hosts ֆայլ, DNS սերվերներ):
- TCP կապի հաստատում: Բրաուզերը հաստատում է կապ սերվերի հետ ստացված IP-հասցեով և պորտով (հատկապես 80 HTTP-ի համար, 443 HTTPS-ի համար):
- HTTP հարցում ուղարկում: Բրաուզերը ձևավորում և ուղարկում է HTTP հարցում (GET, POST և այլն), որը պարունակում է մեթոդը, URL-ը, գլխագրերը (օրինակ, User-Agent, Referer, Cookie) և հնարավոր է՝ հարցման մարմինը (օրինակ, POST-ի համար):
- Հարցի մշակումը սերվերում: Սերվերը ընդունում է հարցումը, վեբ սերվերը (Apache, Nginx և այլն) որոշում է մշակողին (օրինակ, PHP-FPM): PHP ինտերպրետատորը գործարկում է սցենարը:
- 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(); ?> - HTTP պատասխան կազմելը: PHP սցենարը և վեբ սերվերը ձևավորում են HTTP պատասխան, որը ներառում է վիճակային կոդ (օրինակ, 200 OK, 404 Not Found), գլխագրեր (Content-Type, Content-Length և այլն) և պատասխան մարմինը (հատկապես HTML):
- HTTP պատասխան ուղարկում: Սերվերը ուղարկում է HTTP պատասխանն վերադառնալով բրաուզերին՝ օգտագործելով հաստատված TCP կապը:
- Պատասխան ստացում և մշակում: Բրաուզերը ստանում է պատասխան, վերլուծում է գլխագրերը, որոշում է բովանդակության տեսակը և ցուցադրում էջը օգտվողին, կատարում է սցենարներ (JavaScript), բեռնում լրացուցիչ ռեսուրսներ (CSS, պատկերներ):
- TCP կապի կտրում: Կապը սովորաբար փակվում է պատասխան ստանալուց հետո, եթե չեն օգտագործվում կապի պահպանման մեխանիզմներ (keep-alive):