Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 15.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
678.4 Кб
Скачать

4.1.1. Переменные окружения

Переменные окружения применяются в CGI-модуле для получения от Web-сервера служебной информации о самой программе Web-сервера, параметрах HTTP-запроса и другой информации, передаваемой сервером модулю. Напри­мер, в случае метода get при формировании HTTP-запроса в переменную query_string помещаются передаваемые пользовательские данные, а при аль­тернативном подходе (метод post) в переменных окружения contentjtype и content_length содержатся тип и длина передаваемой информации, соответст­венно. Сами данные в последнем случае доставляются через стандартный вход­ной поток.

Переменные окружения могут вмещать в себя следующие данные:

  • server_name — символическое имя или IP-адрес компьютера, на котором за­ пущен Web-сервер (задается в URL при обращении к этому Web-серверу);

  • server_software — название и версия Web-сервера, разделенные символом /;

  • GATEWAY inerface — версия CGI-интерфейса;

  • server_protocol — наименование и версия протокола передачи данных, ис­пользуемого сервером, разделенные символом /;

  • server_port — номер порта, на который браузер посылает запросы Web-серверу;

  • request_method — метод HTTP-запроса;

  • content_length — количество символов в стандартном входном потоке;

  • content_type — тип данных, находящихся в стандартном входном потоке;

  • script_name — виртуальный путь к исполняемому CGI-модулю, используе­мый для получения URL в CGI-модуле;

  • path_info — полученный от клиента виртуальный путь к CGI-модулю;

  • path_translated — физический путь до CGI-модуля, преобразованный иззначения path_info;

  • query_string — строка символов, следующая за знаком ? в URL данного за­ проса;

  • remote_host - символическое имя удаленной машины, с которой произведен запрос;

  • remote_address — IP-адрес клиента;

  • auth_type — метод аутентификации (подтверждения подлинности), если Web-сервер поддерживает аутентификацию пользователей и CGI-модуль за­щищен от постороннего доступа;

  • remote_user — имя пользователя в случае аутентификации;

  • remote_ident — имя пользователя, полученное от сервера (если сервер поддерживает аутентификацию);

  • нттр_ассерт _ список типов MIME, известных клиенту и отделенных друг от друга запятой (тип/подтип, тип/подтип и т. д.);

  • http_user_agent — название браузера, пославшего запрос;

  • http_refer — URL документа HTML, из которого осуществляется вызов CGI-модуля;

  • нттр_ассерт — типы данных MIME, которые могут быть приняты обозрева­телем от Web-сервера;

  • http_accept_language — идентификатор национального языка для получения ответа от Web-сервера;

  • http_ua_pixels — разрешение видеоадаптера, установленное в компьютере пользователя;

  • http_ua_color — допустимое число цветов в системе пользователя;

  • http_ua_cpu — тип центрального процессора в компьютере пользователя;

  • http_uaos — операционная система, под управлением которой работает браузер;

  • http_connection — тип соединения;

  • http_host — имя узла, на котором работает Web-сервер;

  • http_accept_encoding — тип схемы кодирования, используемой обозревате­лем для формирования запроса Web-серверу;

  • httpfrom — имя пользователя, установленное в настройках браузера;

  • http_pragha — специальные команды Web-серверу;

  • http_authorization _ информация для аутентификации браузера на Web-сервере.

Замечание

Тип MIME (Multipurpose Internet Mail Extensions, многоцелевые расширения поч­тового стандарта Интернета) определяет протокол передачи почтовых сооб­щений, используемый взамен стандартного.

Для Web-сервера Microsoft-PWS-95/2.0 в среде Windows 98 и адреса

href="http://igin/scripts/my_cgi.exe?TEST=modul,

задаваемого в строке адреса браузера, переменные окружения будут иметь сле­дующие значения:

SERVER_SOFTWARE = Microsoft-PWS-95/2.0

SERVER_NAME = igin

GATEWAY_INTERFACE = CGI/1.1

SERVER_PROTOCOL = HTTP/1.0

SERVER_PORT =80

REQUEST_METHOD = POST

HTTP_ACCEPT = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,