Hypertext Transfer Protocol veb brauzerlərin və serverlərin ünsiyyət üçün istifadə etdiyi şəbəkə protokolu standartını təmin edir. Protokol URL-də göründüyü üçün vebsayta daxil olanda HTTP görürsünüz (məsələn, Bu protokol fayl ötürmə protokolu kimi digərlərinə bənzəyir, çünki o, uzaq serverdən faylları sorğulamaq üçün müştəri proqramı tərəfindən istifadə olunur. HTTP vəziyyətində, veb-brauzer veb serverdən HTML faylları tələb edir, daha sonra mətn, şəkillər, hiperlinklər və əlaqəli aktivlərlə brauzerdə göstərilir.
Brauzerlər HTTP vasitəsilə əlaqə saxladıqları üçün adətən brauzerin ünvan çubuğuna yazdığınız zaman protokolu URL-dən çıxara bilərsiniz.
HTTP tarixçəsi
Tim Berners-Li 1990-cı illərin əvvəllərində orijinal Ümumdünya Şəbəkəsini təyin etmək işinin bir hissəsi kimi ilkin HTTP standartını yaratdı. 1990-cı illərdə üç əsas versiya tətbiq edilmişdir:
- HTTP 0.9: Əsas hipermətn sənədlərinin dəstəyi.
- HTTP 1.0: Zəngin vebsaytları dəstəkləmək üçün genişləndirmələr.
- HTTP 1.1: İnternet RFC 2068-də göstərilən HTTP 1.0 performans məhdudiyyətlərini həll etmək üçün işlənib hazırlanıb.
Son versiya HTTP 2.0 2015-ci ildə təsdiq edilmiş standart oldu. O, HTTP 1.1 ilə geriyə uyğunluğu qoruyur, lakin əlavə performans təkmilləşdirmələri təklif edir.
Standart HTTP şəbəkə üzərindən göndərilən trafiki şifrələməsə də, HTTPS standartı Secure Sockets Layer və ya daha sonra Nəqliyyat Layer Security istifadə edərək HTTP-yə şifrələmə əlavə edir.
HTTP Necə İşləyir
HTTP müştəri-server rabitə modelindən istifadə edən TCP-nin üzərində qurulmuş proqram qatı protokoludur. HTTP müştəriləri və serverləri sorğu və cavab mesajları vasitəsilə əlaqə saxlayır. Üç əsas HTTP mesaj növü GET, POST və HEAD-dir.
- HTTP GET: Serverə göndərilən mesajlarda yalnız URL var. Sıfır və ya daha çox isteğe bağlı məlumat parametrləri URL-in sonuna əlavə edilə bilər. Server, əgər varsa, URL-in isteğe bağlı məlumat hissəsini emal edir və nəticəni (veb səhifəsi və ya veb səhifənin elementi) brauzerə qaytarır.
- HTTP POST: Mesajlar istənilən isteğe bağlı data parametrlərini URL-in sonuna əlavə etmək əvəzinə sorğu mesajının mətninə yerləşdirir.
- HTTP HEAD: Sorğular GET sorğuları ilə eyni işləyir. URL-in tam məzmunu ilə cavab vermək əvəzinə, server yalnız başlıq məlumatını (HTML bölməsində olan) geri göndərir.
Brauzer serverə TCP bağlantısını işə salmaqla HTTP serveri ilə əlaqəyə başlayır. Veb baxış sessiyaları defolt olaraq server portu 80-dən istifadə edir, baxmayaraq ki, bunun əvəzinə bəzən 8080 kimi digər portlar istifadə olunur.
Sessiya qurulduqdan sonra veb səhifəyə daxil olaraq HTTP mesajlarının göndərilməsini və qəbulunu işə salırsınız.
HTTP vətəndaşlığı olmayan sistem adlanır. Bu o deməkdir ki, FTP kimi digər fayl ötürmə protokollarından fərqli olaraq, sorğu tamamlandıqdan sonra HTTP bağlantısı kəsilir. Beləliklə, veb brauzeriniz sorğu göndərdikdən və server səhifə ilə cavab verdikdən sonra əlaqə bağlanır.
Problemlərin həlli
HTTP üzərindən ötürülən mesajlar bir neçə səbəbdən uğursuz ola bilər:
- İstifadəçi xətası.
- Veb brauzerin və ya veb serverin nasazlığı.
- Veb səhifələrin yaradılmasında xətalar.
- Müvəqqəti şəbəkə xətaları.
Bu nasazlıqlar baş verdikdə, protokol uğursuzluğun səbəbini ələ keçirir və HTTP status xətti/kodu adlanan xəta kodunu brauzerə bildirir. Səhvlər onun hansı xəta olduğunu göstərmək üçün müəyyən nömrə ilə başlayır.
Məsələn, dörd ilə başlayan uğursuz kodu olan xətalar, səhifə üçün sorğunun düzgün tamamlana bilməyəcəyini və ya sorğunun yanlış sintaksisi ehtiva etdiyini göstərir. Nümunə olaraq, 404 səhv veb səhifənin tapılmaması deməkdir; bəzi vebsaytlar hətta əyləncəli fərdi 404 xəta səhifələri təklif edir.