Upgrade to Pro — share decks privately, control downloads, hide ads and more …

водная лекция про Интернет, HTTP и все такое

Avatar for Ivan Gromov Ivan Gromov
September 02, 2014

водная лекция про Интернет, HTTP и все такое

Avatar for Ivan Gromov

Ivan Gromov

September 02, 2014
Tweet

More Decks by Ivan Gromov

Other Decks in Programming

Transcript

  1. Историческая справка В 1957 году Министерство обороны США посчитало, что

    на случай войны Америке нужна надёжная система передачи информации. В 1989 году в Европе, в стенах Европейского совета по ядерным исследованиям (ЦЕРН) родилась концепция Всемирной паутины. Её предложил знаменитый британский учёный Тим Бернерс-Ли, он же в течение двух лет разработал протокол HTTP, язык HTML и идентификаторы URI. 2
  2. Как он работает в 2 фразах? 1.  Браузер посылает запрос

    к серверу 2.  Сервер отвечает на запрос браузера Строго говоря, речь только о HTTP 3
  3. Разговор трёх товарищей 1.  Ваш браузер спрашивает DNS сервер про

    домен yandex.ru 2.  Корневой DNS отправляет браузер к делагату - DNS Яндекса 3.  DNS cервер Яндекса знает о своих хостах и говорит вам IP адрес 4.  Браузер по указанному IP посылает HTTP запрос 5.  Сервер на том хосте отвечает на запрос браузера 6.  Загрузилась страничка 4
  4. A IPv4 адрес AAAA IPv6 адрес CNAME Перенаправление на другое

    имя MX Mail eXchange сервера NS DNS сервер данного домена PTR Обратный DNS запрос SOA Start of Authority (оригинал зоны) SRV Server selection (XMPP) Типы записей DNS 5
  5. Протокол HTTP Запрос Ответ •  Метод (GET, POST) URI •

     Заголовки •  Тело запроса •  Статус •  Заголовки •  Тело ответа 6
  6. Особенности HTTP 1.  Stateless! 2.  IP адрес не идентифицирует пользователя

    Как передавать пользовательскую информацию с сервера? 3.  Нельзя доверять клиенту 7
  7. Диалог браузера с сервером HTTP/1.1 200 Ok Server: nginx Date:

    Thu, 07 Feb 2013 20:04:57 GMT Content-Type: text/html; charset=UTF-8 Connection: close Content-Length: 5438 Set-Cookie: yandexuid=462249991360267497; Domain=.www.ya.ru; Pa 12
  8. Диалог браузера с сервером Server: nginx Date: Thu, 07 Feb

    2013 20:04:57 GMT Content-Type: text/html ; charset=UTF-8 Connection: close Content-Length: 5438 Set-Cookie: yandexuid=462249991360267497; Domain=.www.ya.ru; Pa <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 13
  9. Диалог браузера с сервером Date: Thu, 07 Feb 2013 20:04:57

    GMT Content-Type: text/html; charset=UTF-8 Connection: close Content-Length: 5438 Set-Cookie: yandexuid=462249991360267497; Domain=.www.ya.ru; P <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 14
  10. Диалог браузера с сервером Date: Thu, 07 Feb 2013 20:04:57

    GMT Content-Type: text/html; charset=UTF-8 Connection: close Content-Length: 5438 Set-Cookie: yandexuid=462249991360267497; Domain=.www.ya.ru; Pa <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 15
  11. Взаимоотношения Сайт — веб-сервер, с набором страничек и именем домена

    Домен — доменное имя, купленное у регистратора Регистратор — владелец корневого DNS Хост — сервер (веб-сервер) в интернете с именем хоста Хостинг — сервис, предоставляющий хост для вашего сайта 17
  12. Что нужно усвоить 1.  Web - клиент-серверный 2.  Работает через

    TCP/IP 3.  Текстовый протокол HTTP 4.  Не хранит состояние 5.  Основной контент - HTML 18