Схемы адресации ресурсов Internet

advertisement
Учебный курс
Введение в HTML и CSS
Лекция 2
Схемы адресации ресурсов
Internet и HTTP
кандидат технических наук
Павел Брониславович Храмцов
paul@kiae.su
1
WWW: Схемы адресации ресурсов Internet
Схема HTTP.
http://polyn.net.kiae.su/polyn/manifest.html
http://144.206.160.40/risk/risk.htm
http://144.206.130.137:8080/altai/index.htm
http://polyn.net.kiae.su/altai/volume4.html#first
http://polyn.net.kiae.su/isindex.html?keyword1+keyword2
http://polyn.net.kiae.su/isindex.html?keyword1%20keyword2
http://polyn.net.kiae.su/isindex.html?field1=value1&field2=value
Схема FTP:
ftp://nobody:password@polyn.net.kiae.su/users/local/pub
2
WWW: Схемы адресации ресурсов Internet
Схема Gopher:
gopher://gopher.kiae.su:70:/7/kuku (поиск по слову “kuku”)
Схема MAILTO:
mailto:paul@quest.polyn.kiae.su
Схема NEWS:
news:comp.infosystems.gopher (список)
news:086@comp.infosystems.gopher (текст статьи)
Схема NNTP
nntp:comp.infosystems.gopher/086
3
WWW: Схемы адресации ресурсов Internet
Схема TELNET :
telnet://guest:password@apollo.polyn.kiae.su
Схема WAIS :
wais://wais.think.com/wais?guide
wais://wais.think.com/wais/wtype/039=/kuku/kuku.txt
Схема FILE :
file:///C|/text/html/index.htm
4
WWW: Схемы адресации ресурсов Internet
1. Универсальный идентификатор ресурса был придуман для
обеспечения однотипности идентификации информационных
ресурсов Интернета.
2. Его реализации отличаются друг от друга способом реализации
и набором дейтсвий, которые выполняет прикладная программа
при обработке идентификатора.
3. Идентификатор позволяет описать не только существующие
информационные ресурсы Интернета и технологии доступа к
ним, но и возможные будущие информационные ресурсы,
построенные на принципах, отличных от современных
технологий.
5
WWW: HypetText Transfer Protocol
Принцип работы:
• HTTP – это протокол, реализующий схему «клиент-сервер»
• Обмен данными между клиентом и сервером называется
транзакцией
• Транзакция состоит из запроса клиента и ответа сервера
• Каждый запрос(ответ) состоят из: строки запроса(ответа),
раздела заголовка, тела.
6
Принцип работы:
WWW: HypetText Transfer Protocol
•
Клиент инициирует транзакцию, обращаясь на 80-ый порт
TCP.
• Посылает команду, которая называется методом, адрес
документа и версию протокола:
GET /index.html HTTP/1.1
3. Со следующей строки запроса начинается заголовок
запроса:
User-Agent: Mozilla
Accept: image/gif
Host: www.kuku.ru
4. Далее следует пустая строка, которая отделяет заголовок от
тела
7
WWW: HypetText Transfer Protocol
Принцип работы:
•
Сервер отвечает строкой состояния:
HTTP/1.1 200 OK
2. Далее со следующей строки следует заголовок
Date: Thu, 27 Mar 2008 11:56:04 GMT
Server: Apache/2.2.4 (Unix) PHP/4.4.6 mod_ssl/2.2.4
OpenSSL/0.9.8d
Content-Length: 161
Connection: close
Content-Type: text/html; charset=windows-1251
3. Через пустую строку посылаются данные в теле ответа
8
WWW: HypetText Transfer Protocol
Пример:
%telnet ipgeobase.ru 80
Trying 194.85.91.253...
Connected to ipgeobase.ru.
Escape character is '^]'.
GET / HTTP/1.0
HTTP/1.1 200 OK
Date: Thu, 27 Mar 2008 11:56:04 GMT
Server: Apache/2.2.4 (Unix) PHP/4.4.6 mod_ssl/2.2.4 OpenSSL/0.9.8d
Content-Length: 161
Connection: close
Content-Type: text/html; charset=windows-1251
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /</title>
</head>
<body>
<h1>Index of /</h1>
<ul></ul>
</body></html>
Connection closed by foreign host.
9
WWW: HypetText Transfer Protocol
Методы:
GET - запрашивает данные полностью
HEAD - запрашивает только заголовок
POST - запрашивает данные полностью
LINK - связывает заголовок с
документом на сервере
UNLINK – отменяет LINK
PUT - публикует данные на сервере
DELETE – удаляет данные на сервере
OPTIONS – запрашивает информацию о
параметрах соединения и сервера
TRACE – используется для отладки
10
WWW: HypetText Transfer Protocol
GET - запрашивает данные полностью
GET / HTTP/1.0
HTTP/1.1 200 OK
Date: Thu, 27 Mar 2008 11:56:04 GMT
Server: Apache/2.2.4 (Unix) PHP/4.4.6 mod_ssl/2.2.4
OpenSSL/0.9.8d
Content-Length: 161
Connection: close
Content-Type: text/html; charset=windows-1251
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /</title>
</head>
<body>
<h1>Index of /</h1>
<ul></ul>
</body></html>
11
WWW: HypetText Transfer Protocol
HEAD / HTTP/1.0
HTTP/1.1 200 OK
Date: Thu, 27 Mar 2008 12:05:34 GMT
Server: Apache/2.2.4 (Unix) PHP/4.4.6 mod_ssl/2.2.4
OpenSSL/0.9.8d
Connection: close
Content-Type: text/html; charset=windows-1251
12
WWW: HypetText Transfer Protocol
POST /test.cgi HTTP/1.0
User-Agent: Mozilla/2.02Gold (WinNT; I)
Accept: image/gif
Host: www.kuku.ru
Content-type: application/x-www-form-urlencoded
Content-length: 21
Field1=kuku&field2=20
13
WWW: HypetText Transfer Protocol
Коды ответов:
100-199
200-299
300-399
400-499
500-599
Информационные
Запрос успешный
Переадресация
Запрос неполный
Ошибка сервера
14
WWW: HypetText Transfer Protocol
Коды наиболее «популярных» ответов:
200 Ок
301 Moved Permanently
302 Moved Temporarily
304 Not Modified
305 Use proxy
403 Forbidden
404 Not Found
500 Internal Server Error
Запрос обработан успешно
Страница перемещена
Страница перемещена временно
Не изменился
Нужно использовать
сервер-посредник
Доступ не разрешен
Страница не найдена
15
WWW: HypetText Transfer Protocol
Наиболее «популярные» заголовки:
Cache-Control
Pragma: no-cache
Host:
Cookie:
Set-Cookie:
Referer:
Content-Length:
Expiries:
Last-Modified:
Content-Type:
управление кэшированием страниц
имя хоста (виртуальный хостинг)
поддержка сессий
ссылающийся документ
размер тела документа
время изменения документа
дата последней модификации
типа содержания тела
16
Download