Стандартные интерфейсы WWW серверов
Для организации передачи данных из HTML документа технология WWW серверов использует
CGI интерфейс обмена данными между сервером и приложением-обработчиком(в Windows
подобных операционных системах это Windows CGI интерфейс). При переходе по гиперсвязи из
гипертекстового HTML документа адрес гиперузла вместе с необходимой дополнительной
информацией передается от клиента к WWW серверу. WWW сервер анализирует тип документа ,
который находится в указанном узле и либо сразу после некоторой обработки передает документ
клиенту, либо, если в узле находится документ с MIME типом "application/...", то запускает это
приложение на исполнение и затем возвращает результаты работы этого приложения клиенту. При
запуске приложения приложению передается информация о клиенте и информация, получаемая из
HTML документа клиента, например из объектов диалога, обозначаемых тэгом FORM.
Операционная система Windows не имеет собственного командного интерпретатора, поэтому
обработчик должен быть исполняемой программы. Для упрощения интерфейса и минимизации
программирования используется интерфейс обмена данными через файлы, что является подходом
противоположным подходу DDE. Выбор такого способа обмена объясняется необходимостью
обеспечения одновременного подключения к серверу большого количества клиентских программ
при минимальных ограничениях на количество доступной оперативной памяти. Данные,
необходимые обработчику помещаются в специальный входной файл, результаты выполнения
записываются в специальный выходной файл, который затем считывается WWW сервером.
Информация в выходном файле начинается с указания MIME типа, которому она
соответствует.
WWW сервер использует сервис WinExec() для запуска программы-обработчика. Сервер
поддерживает синхронизацию с обработчиком, несмотря на то, что WinExec() запускает
приложения асинхронно, таким образом сервер может определить момент окончания исполнения
обработчика.
Сервер запускает обработчик с помощью WinExec() с командной строкой следующего вида:
обработчик файл-данных-CGI файл-контекста выходной-файл URL-аргументы, где файл-данных-CGI - файл, в который сервер записывает служебную информацию, файл-контекста - файл, в который сервер записывает данные, введенные пользователем в HTML документ, выходной-файл - файл, в который обработчик должен записать результаты работы, URL-аргументы - все, что следует за '?' в URL запросе. |
Windows-сервер передает данные программе обработчику через Windows "private profile" файл в
формате пар ключ-значение.
Файл CGI данных содержит следующие разделы:
- [CGI]
- [Accept]
- [System]
- [Extra Headers]
- [Form Literal]
- [Form External]
- [Form Huge]
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий