Проектирование Интернет приложений. Тузовский А.Ф. - 76 стр.

UptoLike

Составители: 

76
Внешние программы
Простейший способ динамически формировать web-страницы в от-
вет на HTTP запрос заключается в том, чтобы передать работу по реше-
нию требуемой задачи и формированию HTML страницы внешней про-
грамме, которая должна получать переданные в HTTP запросе входные
параметры и сформировать выходную страницу на языке HTML.
Первой широко используемой, независимой от типа web сервера,
программной технологией создания и выполнения web-приложений бы-
ла технология Common Gateway Interface (CGI, общий шлюзовой ин-
терфейс). Она определяла набор правил, которым должна следовать
программа, чтобы она могла выполняться на разных HTTP серверах и
операционных системах.
В соответствии с CGI технологией при поступлении в web-сервер
HTTP запроса, который включает ссылку не на статическую страницу, а
на CGI программу (например: prog.exe), создается новый процесс, в ко-
тором запускается требуемая прикладная программа. Технология CGI
задает способ передачи такой программе параметров, входящих в состав
НТТP запроса. Передача входных данных может выполняться либо с
помощью фиксированного набора переменных среды (environment va-
riables), которые могут создаваться одной программой и использоваться
другими программами), либо через входные данные функции, с которой
начинается работа программы (функция main()), а результаты работы
программы (HTML страница) возвращаются с помощью стандартного
потока вывода STDOUT. Пример простой CGI программы, написанной
на языке С, которая формирует HTML страницу с перечнем переданных
ей параметров, показан на рис. 3.1.
Технология CGI позволяет использовать любой язык программиро-
вания, который может работать со стандартными устройствами вво-
да/вывода. Кроме этого, CGI программы можно писать с использовани-
ем скриптовых языков, которые называются CGI скриптами”. Приме-
рами скриптовых CGI языков являются, например, Perl, Python или Tcl.
При использовании скрипта web-сервер вызывает на выполнение внеш-
нюю программу интерпретатор скриптов (script engine), которой пере-
даются данные HTTP запроса и имя файла, в котором содержится за-
прашиваемый пользователем скрипт. А затем данная программа выпол-
няет указанный скрипт и возвращает серверу сформированную HTML
страницу.