logo
Лекции по web-дизайну

4.2. Cgi (Common GateWay Interface)

Технология CGI (Common GateWay Interface) подразумевает использование в составе ресурса Интернет интерактивных элементов на базе приложений, обеспечивающих передачу потока данных от объекта к объекту. Именно так организовано во Всемирной сети большинство чатов, конференций, досок объявлений, гостевых книг, поисковых машин и систем подсчета рейтинга. В общем случае принцип работы CGI выглядит следующим образом: пользователь заполняет на Web-страничке ту или иную форму и нажимает на кнопку, после чего встроенная в код HTML строка вызова CGI-скрипта запускает соответствующую программу CGI и передает ей управление процессом обработки информации. Введенные пользователем данные отсылаются этой программе, а она, в свою очередь, «встраивает» их в другую страницу, отправляет по почте или трансформирует каким-либо иным способом, Скрипты CGI размещаются на сервере в специально отведенной для этих целей директории, которой, как правило, назначается имя CGI-BIN. Следует помнить, что подключение, отладка и запуск таких программ требуют соответствующих прав доступа к http-серверу, а также определенных знаний и навыков.

Технология CGI обычно реализуется двумя методами: либо с использованием программ, написанных на языке PERL (Practical Extraction and Report Language), — такие файлы имеют расширение .pi, либо с помощью приложений, созданных обычно с применением языка Си и откомпилированных непосредственно на сервере, поскольку большинство UNIX-совместимых платформ включают в себя встроенный транслятор этого языка. Подобные программы имеют расширение .cgi. Необходимо отметить, что PERL, как и HTML, является интерпретируемым языком. Иными словами, для того чтобы запустить подобный скрипт на исполнение, не требуется дополнительной компиляции. Помимо упомянутых возможностей с помощью данной технологии можно организовать систему показа последовательности рекламных баннеров или автозагрузки файлов на сервер, создать форму отправки электронного письма непосредственно со страницы сайта или службу виртуальных открыток. Среди достоинств CGI следует отметить их независимость от клиентского программного обеспечения — эту технологию сможет применять каждый пользователь, просматривающий содержимое сервера при помощи браузера практически любой версии. Главный недостаток заключается в том, что для установки и настройки приложений CGI на сервере нужно обладать как минимум правами администратора, поскольку эти программы при запуске способны нарушить нормальное функционирование серверного компьютера и дестабилизировать работу сети.