Протокол HTTP.
Протокол HTTP (Hypertext transfer protocol - протокол передачі гіпертексту) є представником протоколів Інтернет прикладного рівня. Цей протокол працює відповідно до моделі клієнт/сервер. При виконанні роботи два мережеві процеси працюють разом, пересилаючи один одному інформацію. При цьому один процес, що є ініціатором діалогу, є клієнтом. Процес, очікуючий запиту і оброблювальний запити клієнтів, є сервером.
Протокол HTTP - це протокол запитів/відповідей. Клієнт посилає запит серверу, який його обробляє і посилає відповідь.HTTP -соединение зазвичай відбувається шляхом TCP/IP -соединений. Заданий за умовчанням порт - 80, хоча може використовуватися і інші порти.
Таким чином, відповідно до моделі стека протоколів Інтернету, прикладна програма, що використовує протокол HTTP, повинна за певними правилами (вони будуть розглянуті нижче) сформувати запит, по протоколу TCP встановити з'єднання, передати серверу сформований запит, отримати по протоколу TCP відповідь, оформлену за правилами протоколу HTTP.
Оскільки протокол HTTP і інші протоколи прикладного рівня використовують поняття URI (Uniform Resource Identifier - універсальний ідентифікатор ресурсу), розглянемо детальніше, як він визначається. Заздалегідь помітимо, що нині поняття URI практично співпадає з поняттям URL (Universal Resource Locator -универсальный адреса ресурсу).
URI складається з наступних частин: тип, ім'я вузла (домена), номер порту, шлях, рядок запиту і ідентифікатор фрагмента.
Тип- є протокол (це може бути також ftp, https).
Вузол - ідентифікує машину. Це може бути або доменне ім'я, або IP -адрес.
Порт- номер порту, по якому проходить робота протоколу. Може не вказуватися. У такому разі мається на увазі стандартний порт, використовуваний протоколом (80 для HTTP).
Шлях - є місце розташування запитаного ресурсу. Залежно від налаштувань цей шлях може відповідати деякому шляху на сервері, але може і не відповідати.
Запит - у разі використання сценаріїв в рядку запиту можуть передаватися параметри в сценарій. Є набір пар ім'я/значення. Пари розділяються знаком &, а ім'я і значення розділяються знаком =.
Фрагмент - вказує на певний розділ ресурсу.
URI може не містити рядка запиту і ідентифікатора фрагмента.
Для URI не має значення регістр букв (нечутливий до регістра).
URI може бути абсолютним і відносним. Абсолютний URI завжди починається з типу протоколу. Приклад абсолютного URI показаний вище. Відносний URI, без імені протоколу або номера порту, може містити повні шляхи (завжди вказуються з кореневого каталогу і починаються зі знаку слеша /) або відносні шляхи (починаються з символа, отличного от /).
Дата добавления: 2015-07-22; просмотров: 700;