Presentation is loading. Please wait.

Presentation is loading. Please wait.

HTTP – протокол и CGI. Запросы и ответы Запрос = Строка-Статус *(Общий-Заголовок | Заголовок- Запроса | Заголовок-Содержания ) CRLF [ Содержание-Запроса.

Similar presentations


Presentation on theme: "HTTP – протокол и CGI. Запросы и ответы Запрос = Строка-Статус *(Общий-Заголовок | Заголовок- Запроса | Заголовок-Содержания ) CRLF [ Содержание-Запроса."— Presentation transcript:

1 HTTP – протокол и CGI

2 Запросы и ответы Запрос = Строка-Статус *(Общий-Заголовок | Заголовок- Запроса | Заголовок-Содержания ) CRLF [ Содержание-Запроса ] Ответ = Строка-Статус *(Общий- Заголовок | Заголовок-Ответа | Заголовок-Содержания) CRLF [ Содержание-Ответа ]

3 Общий Заголовок Общий-Заголовок = Cache-Control: Connection: Date: MIME-Version: Pragma: Transfer-Encoding: Upgrade: Via:

4 Заголовок Connection Значения параметра Connection: Close Keep-Alive Постоянные соединения ( Persistent Connections) Позволяет запрашивать и получать несколько файлов за одно TCP-соединение И клиент и сервер могут прервать соединение. Для того, чтобы известить, что соединение будет прервано, они могут послать Close в значении параметра Connection

5 Запрос Строка-Статус = Метод SP URI- Запроса SP Версия-HTTP CRLF Заголовок-Запроса = Accept: Accept-Charset: Accept-Encoding: Accept-Language: Authorization: Cookie: From: Host: If-Modified-Since: Max-Forwards: Pragma: Proxy-Authorization: Range: Referer: User-Agent: extension-header

6 Методы GET – основной для простых запросов данные добавляются к адресу POST – для посылки данных HEAD – для запроса метаданных Условный GET – используется If-Modified-Since Упоминаются: PUT LINK UNLINK DELETE

7 Ответ Server: Set-Cookie: Vary: Warning: WWW-Authenticate: extension-header Строка-Статус = Версия-HTTP SP Статус-Код SP Фраза-Объяснение Заголовок-Ответа = Accept-Ranges: Age: Proxy-Authenticate: Public: Retry-After:

8 Ответ Accept-Ranges служит для передачи файла по частям (докачки). Значения: bytes – весь файл n:m – кусок с байта n длиной m none – докачка не поддерживается Retry-After – когда сервер «говорит», что сервис временно недоступен (503) Proxy-Authenticate – запрос авторизованного доступа Vary – при передаче одной из версий ресурса. Указываются параметры различия.

9 Заголовок-Содержания Заголовок-Содержания = Allow: Content-Base: Content-Encoding: Content-Language: Content-Length: Content-Transfer-Encoding Content-Type: Derived-From: Expires: Last-Modified: Link: Location: URI:

10 Статус код 1** – информация 2** – успешный ответ 3** – редирект 4** – ошибка запроса 5** – ошибка сервера

11 Статус коды 100 Continue 200 OK 301 Moved Permanently 302 Moved Temporarily 304 Not Modified 401 Unauthorized 403 Forbidden 404 Not Found 405 Method Not Allowed 500 Internal Server Error 503 Service Unavailable

12 Необязательная часть Пример запроса GET /index.html HTTP/1.0 User-Agent: Mozilla/2.02Gold (WinNT; I) Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*

13 Пример ответа HTTP/1.0 200 OK Date: Fri, 20 Sep 1996 08:17:58 GMT Server: NCSA/1.5.2 Last-modified: Mon, 17 Jun 1996 21:53:08 GMT Content-type: text/html Content-length: 2482

14 Cookie Set-Cookie: name=value; – минимальная форма Set-Cookie: name=value; expires=date; path=pathname; domain=domain- name; secure – полная форма

15 Пример Cookie Set-Cookie: username=guest; expires=Monday, 31-Dec-2007 23:59:59 GMT; path=/; domain=www.isu.ru;

16 CGI – Common Gateway Interface серверклиент CGI-программа WWW-сервер браузер HTML- документ шлюз База данных

17 Переменные окружения AUTH_TYPE CONTENT_LENGTH CONTENT_TYPE DOCUMENT_ROOT GATEWAY_INTERFACE HTTP_ACCEPT HTTP_FROM HTTP_REFERER HTTP_USER_AGENT PATH_INFO PATH_TRANSLATED QUERY_STRING REMOTE_ADDR REMOTE_HOST REMOTE_IDENT REMOTE_USER REQUEST_METHOD SCRIPT_NAME SERVER_NAME SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE

18 Переменные окружения CONTENT_LENGTH – длина данных запроса HTTP_COOKIE – cookie HTTP_REFERER – адрес ссылки QUERY_STRING – запрос (GET) REMOTE_ADDR – ip клиента REMOTE_HOST REQUEST_METHOD – метод

19 Заголовки, обрабатываемые сервером Content-type Set-Cookie Location Примеры: Content-type: text/html «текст» Content-type: text/html Set-Cookie: username=guest; «текст» Set-Cookie: username=guest; Location: http://www.isu.ru


Download ppt "HTTP – протокол и CGI. Запросы и ответы Запрос = Строка-Статус *(Общий-Заголовок | Заголовок- Запроса | Заголовок-Содержания ) CRLF [ Содержание-Запроса."

Similar presentations


Ads by Google