|
CGI.
Первые
Web-серверы просто считывали и
возвращали существующую
статическую HTML-страницу. Менеджеры
Web-узлов не могли предоставить
ничего, кроме Web-страниц, имевшихся
на сервере в момент запроса. Однако
вскоре стало ясно, что требуется
более высокий уровень
взаимодействия между клиентом и
сервером, вследствие чего был
разработан общий интерфейс
маршрутизации (Common Gateway Interface, или CGI). CGI позволил
Web-серверу запускать отдельный
процесс, основанный на входных
данных пользователя, работать с
этой информацией и возвращать
клиенту динамично создаваемую
Web-страницу. При этом CGI-программа
могла выполнять любой тип
обработки данных (по заказу
программиста), а также могла
возвращать страницу любого вида
?
естественно, в рамках HTML.
Стандартные
CGI-приложения выполняют чтение из
стандартного потока ввода (stdin). запись в
стандартный поток вывода (stdout) и чтение
переменных окружения. Интерфейс
WinCGI сохраняет
в файле параметры запроса,
запускает приложения WinCGI, читает и
обрабатывает данные в файле с
последующей записью HTML-файла,
который затем возвращается
Web-сервером. Тем самым Web сделала
большой шаг вперед, поскольку
серверы научились предоставлять
совершенно уникальные ответы на
запросы пользователей.
Однако
приложениям CGI и WinCGI присущи и
некоторые недостатки. Каждый
запрос должен запускать на сервере
свой собственный процесс, и поэтому
несколько запросов могут легко
уложить даже умеренно загруженный
сервер ? ведь ему
приходится выполнять такие
относительно медленные задачи, как
создание файла, запуск отдельного
процесса, его выполнение, запись и
возвращение другого файла.
|
|