Применение CGI-скриптов

Common Gateway Interface - средство расширения возможностей World Wide Web технологии

Главное назначение Common Gateway Interface - обеспечение единообразного потока данных между сервером и прикладной программой, которая запускается из-под сервера

CGI-скрипт - программа написанная в соответствии со спецификацией Common Gateway Interface. CGI-скрипты могут быть написаны на любом языке программирования (C, C++, PASCAL, FORTRAN и т. п.) или командном языке (shell, cshell, командный язык MS-DOS, Perl и т. п.). Скрипт может быть написан даже на языке редактора EMAC в системах Unix

Шлюз - это CGI-скрипт, который используется для обмена данными с другими информационными ресурсами Internet или приложениями-демонами. Обычная CGI- программа запускается сервером HTTP для выполнения некоторой работы, возвращает результаты серверу и завершает свое выполнение

Механизмы обмена данными

  • переменные окружения
  • формат командной строки
  • формат стандартного ввода
  • формат стандартного вывода

Список переменных окружения

К общим переменным окружения относятся:

  • SERVER_SOFTWARE - определяет имя и версию сервера
  • SERVER_NAME - определяет доменное имя сервера
  • GATEWAY_INTERFACE - определяет версию интерфейса

К запрос-ориентированным относятся:

  • SERVER_PROTOCOL - протокол сервера
  • SERVER_PORT - определяет порт TCP, по которому осуществляется взаимодействие (80 порт)
  • REQUEST_METHOD - определяет метод доступа к информационному ресурсу
  • PATH_INFO - передает программе путь (адрес скрипта) в виде, указанном в HTML-документе
  • PATH_TRANSLATED - то же, что и PATH_INFO, но только после подстановки сервером определенных в его конфигурации вставок
  • SCRIPT_NAME - определяет адрес скрипта так, как он указан клиентом
  • QUERY_STRING - определяет содержание запроса к скрипту

Идентификация пользователя и его машины:

  • REMOTE_HOST - доменный адрес машины, с которой осуществляется запрос
  • REMOTE_ADDR - IP-адрес запрашивающей машины
  • AUTH_TYPE - тип идентификации пользователя
  • REMOTE_USER - идентификация пользователя
  • REMOTE_IDENT - устанавливается сервером; предназначена для первоначального использования скрипта
  • CONTENT_TYPE - определяет MIME-тип данных, передаваемых скрипту
  • CONTENT_LENGTH - определяет размер данных в байтах, которые передаются скрипту

Стандартный ввод CGI-скрипта

  • Методы GET или Post
  • CONTENT-LENGHT
  • CONTENT-TYPE
  • QUERY-STRING

Стандартный вывод CGI-скрипта

  • Заголовок
    • CONTENT-TYPE
    • Location
    • Status
  • Тело ответа (обычно текст)

Применение CGI-скриптов

  • Простейшие SHELL-скрипты
  • Вызов внешней программы через SHELL
  • Вызов модуля "С"
  • Доступ к базам данных
  • Imagemap

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: