Аргументы командной строки
Применение CGI-скриптов
Список переменных окружения
Механизмы обмена данными
- переменные окружения
- формат командной строки
- формат стандартного ввода
- формат стандартного вывода
К общим переменным окружения относятся:
- 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
- Тело ответа (обычно текст)
- Простейшие SHELL-скрипты
- Вызов внешней программы через SHELL
- Вызов модуля "С"
- Доступ к базам данных
- Imagemap
Программа CGI Script в командной строке от сервера получает:
- остаток URL после имени программы в качестве первого параметра (первый параметр будет пуст, если присутствовало только имя программы);
- список ключевых слов в качестве остатка командной строки для скрипта поиска;
или - чередующиеся имена полей формы с добавленным знаком равенства (на четных позициях) и соответствующих значений переменных (на нечетных позициях).
Ключевые слова, имена полей формы и значения передаются раскодированными (HTTP -- URL формат кодирования) и перекодированными в соответствии с правилами кодирования Bourne shell, так что программа в командной строке получит информацию в том виде, как она есть, без необходимости осуществлять дополнительные преобразования.