Web-узлы. Разработка и администрирование.
Часть 1. Web-технология
Основные компоненты Web-технологии 1. Язык гипертекстовой разметки HTML. 2. Протокол передачи гипертекста http. 3. Спецификации на типы данных в Интернет. 4. Системы WWW-адресации (URL, etc.)
3. Спецификации на типы данных в Интернет. 1). Браузер должен знать, какой тип документа он получает от сервера, чтобы знать как его интерпретировать.
2). Каждому типу данных -> ставится в соответствие MIME type, который каждый раз добавляется в заголовок сообщения сервера. В заголовке указывается MIME-type, который может принимать в частности следующие значения: Картинки gif image/gif Картинки jpeg image/jpeg VRML-файлы wrl, vrml model/vrml HTML-документ html,htm text/html Flash-документ swf application/x-shockwave-flash … 3). На каждый такой тип в браузере – свое действие.
4. Системы WWW-адресации (URL, etc.) Доступ к информационному ресурсу WWW по универсальному идентификатору. Типичный для URL вид: протокол://полное_имя_машины(или адрес):порт/путь "протокол" принимает значения: http- передача гипертекста; ftp- протокол передачи файлов; telnet- терминальный доступ; gopher- еще одно очень популярное в Internet приложение; news- новости Usenet; file- для доступа к локальным файлам;
Параметр "порт" можно не указывать и тогда подразумевается порт, стандартный для данного протокола: Для ftp используются порты 20 и 21, http - 80, telnet - 23, gopher - 70, news – 119 … ftp://ftp.kiae.su/unix/ telnet://whitehouse.gov:23 "путь" специфичен для каждого протокола,например, для ftp - это путь в файловой системе
Часть 2. Web-серверы. Организация и функционирование
Что такое Web-сервер
1. Компьютер: o подключен к сети Интернет o предоставляет файлы клиентам (в осн. клиенты - браузеры) o специальное ПО для реализации получения файлов клиентами ИЛИ 2. Специальное ПО, установленное на таком компьютере
Бесплатный Для опытных пользователей сложность - настройки - обслуживания Web-серверы (ПО) Apache (на Unix/Linux ) IIS Internet Information Service (от Microsoft) Для чайников Есть графический интерфейс
Система клиент-сервер Сервер: хранятся различные ресурсы сервер обрабатывает запросы клиентов, которым необходим тот или иной ресурс сервер осуществляет обмен информацией с клиентами и другими серверами Клиент: - обычно браузер: осуществляет запрос требуемого ресурса на сервер браузер обрабатывает полученный ресурс
Схема доступа клиента к web-серверу
1). Получение по DNS имени => IP 2). Запрос на сервер с полученным IP для получения некоторого ресурса. 3). Получение запрашиваемого ресурса. 4). Разрыв соединения.
л Обычные страницы Страницы с формой CGI- скрипты Программы- модули Web-сервер СУБД Данные для программ- модулей JAVA- апплеты VRML- страницы GIF; JPEG; MPEG и т.д. к программе- клиенту Внутренняя организация Web-узла
VRML-страницы Текстовый документ Написан не на html, а на Virtual Reality Modeling Language (язык модулирования виртуальной реальности) VRML – сцена (мир): o трехмерные образы o трехмерный текст
Технологии разработки таких прикладных программ: CGI-скрипты API-интерфейсы FCGI-приложения
CGI (Common Gateway Interface) Что это такое: Данная спецификация определяет стандартный cпособ обмена данными (информацией) между прикладной программой и http-сервером.
Cпособ обмена данными между прикладной программой и браузером: CGI-скриптом называют программу, написанную на любом языке программирования или командном языке, которая осуществляет обмен данными с http-сервером в соответствии со этой спецификацией.
Виртуальные web-страницы в виде отдельного файла в файловой системе сервера не существует. Появляется только в момент обращения клиента к серверу. => получаем динамические страницы. С автоматическим наполнением контента.
Виртуальные web-страницы
Java-апплеты 1). На сервере: компилятор переводит java-программы => в байт коды (апплеты) Отдельная директория->Java-апплеты 2). Браузер видит в коде HTML специальный контейнер applet'ов и отдает запрос на получение апплета серверу. 3). Браузер загружает байт-код 4). Передает на выполнение установленной на О.С. клиента Java-машине. Выполнение на клиенте
Типы серверов 1. Простой (классический ) сервер: доступ к документам Web-узла. обмен данными с прикладными программами по запросу программы клиента 2. Сервер-посредник (proxy-сервер) 3. Кэширующий сервер Главная задача: сокращение трафика в сети Получаем: временную локальную базу в сети с более быстрым доступом.