Встроенные переменные nginx

Опубликовано 2016-09-08 03:19:38

$args, эта переменная равна аргументам в строке запроса;

$arg_name, эта переменная равна аргументу name в строке запроса;

$binary_remote_addr, эта переменная равна адресу клиента в бинарном виде, длина её значения всегда 4 байта;

$content_length, эта переменная равна строке "Content-Length" в заголовке запроса;

$content_type, эта переменная равна строке "Content-Type" в заголовке запроса;

$cookie_name, эта переменная равна cookie name;

$document_root, эта переменная равна значению директивы root для текущего запроса;

$document_uri, то же самое, что и $uri;

$host, эта переменная равна строке "Host" в заголовке запроса или имени сервера, на который пришёл запрос, если этой строки нет;

$hostname, эта переменная равна имени хоста;

$http_name, эта переменная равна строке name в заголовке запроса;

$is_args, эта переменная равна "?", если в строке запроса есть аргументы, и пустой строке, если их нет;

$limit_rate, эта переменная позволяет установить ограничение скорости соединения;

$pid, эта переменная равна номеру рабочего процесса;

$request_method, эта переменная равна методу запроса, обычно это "GET" или "POST";

$remote_addr, эта переменная равна адресу клиента;

$remote_port, эта переменная равна порту клиента;

$remote_user, эта переменная равна имени пользователя, используемого в Basic аутентификации;

$realpath_root, эта переменная равна значению директивы root для текущего запроса, при этом все символические ссылки преобразованы в реальные путь;

$request_filename, эта переменная равна пути к файлу для текущего запроса, формируемому из директив root или alias и URI запроса;

$request_body, эта переменная содержит тело запроса. Значение переменной появляется в location'ах, обрабатываемых директивами proxy_pass и fastcgi_pass.

$request_body_file, эта переменная равна имени временного файла, в котором хранится тело запроса. По завершению работы файл необходимо удалить. Для того, чтобы тело запроса клиента всегда записывалось в файл, нужно указать client_body_in_file_only on. При передаче имени в проксированном запросе или в запросе к FastCGI-серверу следует запретить передачу самого тела директивами "proxy_pass_request_body off" или "fastcgi_pass_request_body off" соответственно.

$request_uri, эта переменная равна полному первоначальному URI вместе с аргументами;

$query_string, то же самое, что и $args;

$scheme, эта переменная равна схеме запроса — "http" или "https";

$server_protocol, эта переменная равна протоколу запроса, обычно это "HTTP/1.0" или "HTTP/1.1";

$server_addr, эта переменная равна адресу сервера, на который пришёл запрос. Как правило, для получения значения этой переменной делается один системный вызов. Для того, чтобы избежать системного вызова, нужно указывать адреса в директивах listen и использовать параметр bind;

$server_name, эта переменная равна имени сервера, на который пришёл запрос;

$server_port, эта переменная равна порту сервера, на который пришёл запрос;

$uri, эта переменная равна текущему URI в запросе, он может отличаться от первоначального, например, при внутренних редиректах или при использовании индексных файлов.

Источник: http://docs.mirocow.com/doku.php?id=nginx:%D0%B2%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BF%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_nginx