WWW
World Wide Web
Что такое Интернет?
Интернет — это глобальная компьютерная сеть, объединяющая сотни
миллионов компьютеров в общее информационное пространство.
Интернет представляет свою инфраструктуру для прикладных сервисов
различного назначения, самым популярным из которых является
Всемирная Паутина – World Wide Web (www).
Компьютеры обмениваются данными, используя Интернет-протокол (IP)
IP-адрес – 4-х-байтовый (16-ти-байтовый – IPv6) уникальный
идентификатор компьютера, например: [Link]
Локальный IP-адрес – адрес компьютера в локальной сети;
Глобальный IP-адрес – адрес компьютера для глобальной сети.
С помощью команды ipconfig можно узнать свой локальный IP-адрес,
а обратившись по адресу [Link] – узнать глобальный адрес.
Символьные имена
Domain Name System (DNS) – сеть серверов, содержащих таблицы
соответствия символьных имен IP-адресам. Например,
[Link] – [Link]
[Link] – [Link]
Локальные DNS – соответствия имен адресам в пределах одной ОС,
для Windows соответствующая таблица хранится в файле
C:\Windows\system32\drivers\etc\hosts
World Wide Web
World Wide Web (www, web, рус.: веб, Всемирная Паутина) — распределенная
информационная система, предоставляющая доступ к гипертекстовым документам
по протоколу HTTP.
WWW — сетевая технология прикладного уровня стека TCP/IP, построенная
на клиент-серверной архитектуре и использующая инфраструктуру Интернет для
взаимодействия между сервером и клиентом.
Архитектура сервиса
Компоненты сервиса
• URL/URI — унифицированный способ адресации и идентификации сетевых
ресурсов;
• HTML — язык гипертекстовой разметки веб-документов;
• HTTP — протокол передачи гипертекста;
• Серверные расширения (CGI, …).
[Link]
URL
URL (RFC 1738) — унифицированный локатор (указатель) ресурсов,
стандартизированный способ записи адреса ресурса в www и сети Интернет.
Адрес URL имеет гибкую и расширяемую структуру для максимально естественного
указания местонахождения ресурсов в сети.
Для записи адреса используется ограниченный набор символов ASCII.
Общий вид адреса можно представить так:
<схема>://<логин>:<пароль>@<хост>:<порт>/<полный-путь-к-ресурсу>
Где:
схема
схема обращения к ресурсу: http, ftp, gopher, mailto, news, telnet, file, man, info, whatis,
ldap, wais и т.п.
логин:пароль
имя пользователя и его пароль, используемые для доступа к ресурсу
хост
доменное имя хоста или его IP-адрес.
порт
порт хоста для подключения
полный-путь-к-ресурсу
уточняющая информация о месте нахождения ресурса (зависит от протокола).
Примеры URL
[Link] #запрос стартовой страницы по умолчанию
[Link] #запрос страницы в указанном
каталоге
[Link] #подключение на нестандартный порт
[Link] #передача параметров скрипту
[Link] #авторизация на ftp-сервере
[Link] #подключение по ip-адресу
[Link] #открытие локального файла
gopher://[Link]/1 #подключение к серверу gopher
[Link] #ссылка на адрес эл.почты
HTML
HTML (HyperText Markup Language) — стандартный язык разметки документов во
Всемирной паутине. Большинство веб-страниц созданы при помощи языка HTML.
Язык HTML интерпретируется браузером и отображается в виде документа, в
удобной для человека форме. HTML является приложением SGML (стандартного
обобщённого языка разметки) и соответствует международному стандарту ISO
8879.
HTML создавался как язык для обмена научной и технической документацией,
пригодный для использования людьми, не являющимися специалистами в
области вёрстки. Для этого он представляет небольшой (сравнительно) набор
структурных и семантических элементов — тегов. Изначально язык HTML был
задуман и создан как средство структурирования и форматирования документов
без их привязки к средствам воспроизведения (отображения). В идеале, текст с
разметкой HTML должен единообразно воспроизводиться на различном
оборудовании (монитор ПК, экран органайзера, ограниченный по размерам
экран мобильного телефона, медиа-проектор).
HTTP
HTTP (HyperText Transfer Protocol) — протокол передачи гипертекста, текущая версия
HTTP/1.1 (RFC 2616). Этот протокол изначально был предназначен для обмена
гипертекстовыми документами, сейчас его возможности существенно расширены в
сторону передачи двоичной информации.
HTTP — типичный клиент-серверный протокол, обмен сообщениями идёт по схеме
«запрос-ответ» в виде ASCII-команд. Особенностью протокола HTTP является
возможность указать в запросе и ответе способ представления одного и того же
ресурса по различным параметрам: формату, кодировке, языку и т. д. Именно
благодаря возможности указания способа кодирования сообщения клиент и сервер
могут обмениваться двоичными данными, хотя данный протокол является
символьно-ориентированным.
HTTP — протокол прикладного уровня, но используется также в качестве
«транспорта» для других прикладных протоколов, в первую очередь, основанных на
языке XML (SOAP, XML-RPC, SiteMap, RSS и проч.).
Серверные расширения
Существуют различные механизм доступа к программам на стороне веб-сервера.
Интерфейс (модули расширения) применяется для создания динамических веб-
сайтов, например, когда веб-страницы формируются из результатов запроса к базе
данных.
Программное обеспечение. Веб-
серверы
Веб-сервер — это сетевое приложение, обслуживающее HTTP-запросы от клиентов,
обычно веб-браузеров. Веб-сервер принимает запросы и возвращает ответы, обычно
вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими
данными. Веб-серверы — основа Всемирной паутины. С расширением спектра
сетевых сервисов веб-серверы все чаще используются в качестве шлюзов для
серверов приложений или сами представляют такие функции (например, Apache
Tomcat, Glassfish, …).
Созданием программного обеспечения веб-серверов занимаются многие
разработчики, но наибольшую популярность (по статистике [Link]
имеют такие программные продукты, как Apache (Apache Software Foundation), IIS
(Microsoft), nginx.
Программное обеспечение.
Браузеры
Браузер, веб-обозреватель (web-browser) — клиентское приложение для
доступа к веб-серверам по протоколу HTTP и просмотра веб-страниц. Как
правило браузеры дополнительно поддерживают и ряд других протоколов
(например ftp, file).
Первые HTTP-клиенты были консольными и работали в текстовом режиме,
позволяя читать гипертекст и перемещаться по ссылкам. Сейчас консольные
браузеры (такие, как lynx, w3m или links) практически не используются
рядовыми посетителями веб-сайтов. Тем не менее такие браузеры весьма
полезны для веб-разработчиков, так как позволяют «увидеть» веб-страницу
«глазами» поискового робота.
Исторически первым браузером в современном понимании (т.е. с
графическим интерфейсом и т.д.) была программа NCSA Mosaic,
разработанная Марком Андерисеном и Эриком Бина. Mosaic имел довольно
ограниченные возможности, но его открытый исходный код стал основой для
многих последующих разработок.
Структура курса
1.Протокол HTTP
2.Технологии на стороне клиента
[Link]
[Link]
[Link] script
3.Технологии на стороне сервера
1.Веб-сервера и сервера приложений
[Link] script
[Link]?