HTTP туралы білу қажет барлық нәрсе
HTTP (гипермәтінді тасымалдау протоколы) веб-шолғыштар мен серверлер байланысу үшін пайдаланатын желі протоколының стандартын ұсынады. Бұл веб-сайтқа кірген кезде оны түсіну оңай, себебі ол URL мекенжайында дұрыс жазылған (мысалы, http: // www ).
Бұл протокол қашықтағы серверден файлдарды сұрату үшін клиенттік бағдарлама арқылы FTP сияқты басқа адамдарға ұқсас. HTTP жағдайда, әдетте веб-серверден HTML файлдарын сұрайтын веб-браузер болып табылады, ол кейін шолғышта мәтінмен, суреттермен, гиперсілтемелермен және т.б. көрсетіледі.
HTTP - «азаматтығы жоқ жүйе» деп аталады. Бұл дегеніміз, FTP сияқты басқа файлдарды тасымалдау протоколдарына қарағанда, HTTP қосылымы сұралғаннан кейін түсіріледі. Мәселен, веб-браузер сұрауды жібергеннен кейін және сервер бетпен жауап берсе, байланыс жабық болады.
Көптеген веб-браузерлердің әдепкі HTTP-ге дейін, тек домен атауын теріп, браузер «http: //» бөлігін автоматты түрде толтыра алады.
HTTP тарихы
Тим Бернерс-Ли бастапқы HTTP-ді 1990-шы жылдардың басында жасатты. 90-шы жылдарда үш негізгі нұсқасы кеңінен қолданылды:
- HTTP 0.9 (негізгі гипермәтіндік құжаттарды қолдау үшін)
- HTTP 1.0 (кеңейтілген веб-сайттарды қолдау және кеңейтілім)
- HTTP 1.1 (Internet RFC 2068-де көрсетілген HTTP 1.0 орындау шектеулерін шешу үшін әзірленген)
HTTP 2.0 нұсқасының ең соңғы нұсқасы 2015 жылы мақұлданған стандартқа айналды. HTTP 1.1 нұсқасымен кері сыйысымдылықты сақтайды, бірақ қосымша өнімділік жақсартуларын ұсынады.
Стандартты HTTP желі арқылы жіберілген трафикті шифрласа да, HTTPS стандарты (бастапқыда) Secure Sockets Layer (SSL) немесе (кейінірек) Transport Layer Security (TLS) пайдалану арқылы HTTP шифрлауды қосу үшін әзірленген.
HTTP қалай жұмыс істейді
HTTP - клиент-сервердің байланыс моделі пайдаланатын TCP- нің үстіне орнатылған бағдарлама деңгейінің протоколы. HTTP клиенттері мен серверлері HTTP сұрауы мен жауап хабарлары арқылы байланысады. Үш негізгі HTTP хабарламасының түрлері - GET, POST және HEAD.
- Серверге жіберілген HTTP GET хабарлары тек URL мекенжайынан тұрады . URL-нің соңына нөлдік немесе одан да көп қосымша деректер параметрлері қосылуы мүмкін. Сервер егер бар болса, URL мекенжайының қосымша деректер бөлігін өңдейді және нәтижені (веб-бетті немесе веб-беттің элементін) шолғышқа қайтарады.
- HTTP POST хабарламалары кез келген қосымша деректерді URL мекен-жайының соңына қоспай, сұрау хабарының корпусында орналастырады.
- HTTP HEAD сұрауы GET сұрауларымен бірдей жұмыс істейді. URL мекен-жайының толық мазмұнымен жауап берудің орнына, сервер тек тақырып тақырыптарын (HTML бөлімінде қамтылған) ғана жібереді.
Серверге TCP қосылымын бастау арқылы браузер HTTP серверімен байланыс орнатады. Веб-шолу сеанстары әдепкі бойынша 80 сервер портын пайдаланады, 8080 сияқты басқа порттар кейде орнына қолданылады.
Сеанс орнатылғаннан кейін, пайдаланушы HTTP хабарларды жіберуді және қабылдауды веб-бетке бару арқылы іске қосады.
Мәселелер HTTP арқылы
HTTP арқылы жіберілген хабарлар бірнеше себептер бойынша сәтті жеткізіле алмауы мүмкін:
- пайдаланушы қатесі
- веб-браузердің немесе веб-сервердің дұрыс жұмыс істемеуі
- веб-беттерді жасаудағы қателіктер
- Уақытша желілік глюкоздар
Бұл ақаулықтар орын алғанда, хаттама сәтсіздікке әкеледі (егер мүмкін болса) және қате кодын браузерге HTTP күй жолы / код деп атайды. Қателер қандай қате екенін көрсету үшін белгілі бір саннан басталады.
Мысалы, 4xx қателері бетке сұрау дұрыс орындалмағанын немесе сұрауда қате синтаксис бар екенін көрсетеді. Мысал ретінде 404 қате бетті табу мүмкін емес екенін білдіреді; Кейбір веб-сайттарда тіпті 404 қателік беттерін де қызықтырады .