Как я уже говорил, сервер и шлюз общаются между собой через стандартные потоки ввода/вывода
и переменные среды. Незная названий этих переменных среды сложно что-либо получить от сервера :-).
Давайте рассмотрим какие же переменные среды устанавливает сервер в момент запуска шлюза.
Переменные среды о сервере
Эти переменные сервер устанавливает для того, чтобы шлюз мог узнать с каким
сервером он работает. Сюда входят данные о портах сервера, его версии, типе
интерфеса CGI и т.д. В каждой версии сервера часто прибавляются новые переменные, но
следующие переменные должен устанавливать любой сервер любой версии.
GATEWAY_INTERFACE
Указывает версию интерфейса CGI, который поддерживает сервер. Например:
CGI/1.1
SERVER_NAME
Содержит IP адрес сервера или его доменное имя. Например:
www.mjk.msk.ru
SERVER_PORT
Номер порта, по которому сервер получает http запросы. Стандартный порт для этого 80.
SERVER_PROTOCOL
Версия протокола Http, который использует сервер для обработки запросов. Например:
HTTP/1.1
SERVER_SOFTWARE
Название и версия программы сервера. Например:
Apache/1.3.3 (Unix) (Red Hat/Linux)
Эти переменные обеспечивают все необходимые данные о сервере, на котором запускается скрипт.
Если Ваш сервер сконфигурирован для работы с одним хостом, то скорее информация эта вам не понадобится.
Сейчас же большинство серверов позволяют создавать так называемые "виртуальные" хосты. Т.е. это
один компьютер, который поддерживает много IP адресов и различает запросы от клиентов
по требуемому хосту, на которые он соответственно выдает странички с сайтов.
Тут уже могут понадобиться данные о портах сервера (т.к. многие хосты просто "сидят" на других портах, например 8080, 8081 и т.д.)
и его IP адрес с именем.