Лекция
Привет, Вы узнаете о том , что такое переменные окружения cgi, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое переменные окружения cgi , настоятельно рекомендую прочитать все из категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend) .
Непосредственно перед запуском сценария сервер передает ему некие переменные окружения с информацией. В определенных переменных содержатся некоторые заголовки, но, как уже говорилось, не все (получить все заголовки нельзя). Переменные окружения в языке PHP можно использовать как самые обыкновенные переменные. Переменные окружения делятся на четыре большие группы:
Рассмотрим первые три группы переменных окружения:
Формируемые сервером переменные:
Переменная окружения
|
Описание переменной окружения
|
AUTH_TYPE | Используется схема аутентификации. Обычно 'BASIC' |
CONTENT_LENGTH | Длина содержимого, например, text/html |
CONTENT_TYPE | MIME-тип содержимого, например, text/html |
GETAWAY_INTERFACE | Версия CGI, например CGI/1.1 |
PATH_INFO | HTTP-путь к сценарию |
PATH_TRANSLATED | Полный путь к сценарию |
REMOTE_ADDR | IP-адрес запрашиваемого компьютера-клиента |
REMOTE_HOST | Доменное имя запрашивающего компьютера (если доступно). Доменное имя определяется web-сервером с помощью службы DNS. Об этом говорит сайт https://intellect.icu . Директива HostNameLookups сервера Apache разрешает (или запрещает) преобразование IP-адреса в доменное имя. |
REMOTE_PORT | Порт, закрепленный за браузером для получения ответа от сервера |
REMOTE_USER | Имя пользователя, прошедшего аутентификацию |
QUERY_STRING | Строка переданных серверу параметров |
SERVER_ADDR | IP-адрес сервера |
SERVER_NAME | Доменное имя сервера. Определяется директивой ServerName файла конфигурации |
SERVER_PORT | TCP-порт Web-сервера. Обычно 80 |
SERVER_PROTOCOL | Версия протокола HTTP. Например, HTTP/1.1 |
SERVER_SOFTWARE | Программное обеспечение сервера |
SCRIPT_NAME | HTTP-путь к сценарию |
SCRIPT_FILENAME | Имя файла сценария в файловой системе сервера (физический путь). Например, /var/www/cgi-bin/script.cgi |
Специальные переменные сервера Apache:
Переменная окружения
|
Описание переменной окружения
|
DOCUMENT_ROOT | Физический путь к корневому www-каталогу сервера. Например, /var/www.html/ |
SERVER_ADMIN | Адрес электронной почты администратора сервера |
SERVER_SIGNATURE | Подпись сервера. Например, "Apache/1.3.3 Server at www.somefirm.com Port 80" |
Переменные HTTP-полей запроса:
Переменная окружения
|
Описание переменной окружения
|
HTTP_HOST | Имя виртуального хоста, которому адресован запрос |
HTTP_USER_AGENT | Программное обеспечение удаленного пользователя. Обычно данная переменная окружения содержит название и версию браузера |
HTTP_ACCEPT | Список поддерживаемых клиентов типов содержимого. В последнее время вместо списка браузеры возвращают значение *.*, что означает "все типы" |
HTTP_ACCEPT_LANGUAGE | Список поддерживаемых языков в порядке предпочтения, например, ru, en |
HTTP_ACCEPT_ENCODING | Список поддерживаемых методов сжатия |
HTTP_ACCEPT_CHARSET | Список поддерживаемых кодировок |
HTTP_CONNECTION |
Тип соединения. Возможны два варианта:
|
HTTP_REFERER | Значение поля REFERER. В этом поле браузер передает URL ресурса, который ссылается на наш сервер. Например, если пользователь перешел на сайт со страницы http://www.somehost.com/page.php, то значение поля REFERER будет http://www.somehost.com/page.php. |
HTTP_X_FORWARDED_FOR | Если пользователь работает через прокси-сервер, то в этом поле будет IP-адрес компьютера, обратившегося к прокси-серверу. Если данное поле уже содержит значение, то новое значение будет добавлено через запятую. |
В заключение, эта статья об переменные окружения cgi подчеркивает важность того что вы тут, расширяете ваше сознание, знания, навыки и умения. Надеюсь, что теперь ты понял что такое переменные окружения cgi и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)
Из статьи мы узнали кратко, но содержательно про переменные окружения cgi
Комментарии
Оставить комментарий
Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)
Термины: Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)