@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN - Revision: b767006c8672c9e8ecec8429bb4f3be8889bde6b Maintainer: mch Status: ready -->
<!-- EN - Revision: a124543dd3f6b1e5567b07420d23899e582514dc Maintainer: mch Status: ready -->
<!-- Reviewed: no -->
<refentry role= "variable" xml:id= "reserved.variables.server" xmlns= "http://docbook.org/ns/docbook" xmlns:xlink= "http://www.w3.org/1999/xlink" >
<refnamediv >
@@ -10,24 +10,24 @@
<refsect1 role= "description" >
&reftitle.description;
<para >
Переменная <varname > $_SERVER</varname> - это массив (&array; ), содержащий такую информацию,
как заголовки , пути и место положения скриптов.
Переменная <varname > $_SERVER</varname> — массив (&array; ), который содержит информацию
о заголовка х , путях и р а с положениях скриптов.
Записи в этом массиве создаются веб-сервером, поэтому нет гарантии, что каждый веб-сервер будет
предоставлять люб ую из этих переменных; серверы могут опускать некоторые из них или предоставлять другие,
не указанные здесь .
предоставлять кажд ую из этих переменных; серверы иногда опускают отдельные переменные или предоставляю т другие,
которые здесь не указали .
Однако большинство из этих переменных учтены в спецификации
<link xlink:href= "&url.rfc;3875" > CGI/1.1</link> и, скорее всего, будут определены .
<link xlink:href= "&url.rfc;3875" > CGI/1.1</link> и, скорее всего, определятся .
</para>
<note >
<simpara >
При запуске PHP в <link linkend= "features.commandline" > командной строке</link>
большинство из этих записей будут недоступны или не будут иметь никакого значения.
При запуске PHP <link linkend= "features.commandline" > в командной строке</link>
б о ́ льшая часть этих записей недоступна или не содержит никакого значения.
</simpara>
</note>
<para >
В дополнение к перечисленным ниже элементам, PHP будет создавать дополнительные элементы
с о значениями из заголовков запросов. У э лементов будет имя <literal > HTTP_</literal> ,
за которым следует имя заголовка, написанное с заглавной буквы и с подчёркиванием вместо дефиса.
В дополнение к перечисленным ниже элементам PHP создаст дополнительные элементы
с о значениями из заголовков запросов. Э лементам присваивается название с префиксом <literal > HTTP_</literal> ,
за которым идёт название заголовка, написанное с заглавной буквы и с подчёркиванием вместо дефиса.
Например, заголовок <literal > Accept-Language</literal> будет доступен как <code > $_SERVER['HTTP_ACCEPT_LANGUAGE']</code> .
</para>
</refsect1>
@@ -41,17 +41,17 @@
<term > '<varname > PHP_SELF</varname> '</term>
<listitem >
<simpara >
Имя файла скрипта, который сейчас выполняется, относительно
корня документов. Например, <varname > $_SERVER['PHP_SELF']</varname> в скрипте
Название файла скрипта, который выполняется в текущий момент , относительно
корня документов. Например, переменная <varname > $_SERVER['PHP_SELF']</varname> в скрипте
по адресу <filename > http://example.com/foo/bar.php</filename>
будет <filename > /foo/bar.php</filename> .
Константа <link linkend= "language.constants.predefined " > __FILE__</link>
содержит полный путь и имя файла текущего (то есть
примет значение <filename > /foo/bar.php</filename> .
Константа <link linkend= "language.constants.magic " > __FILE__</link>
содержит полный путь и название файла текущего (то есть
подключённого) файла.
</simpara>
<simpara >
Если PHP запущен в командной строке, эта переменная содержит
имя скрипта .
Переменная содержит название скрипта,
если PHP запустили в командной строке .
</simpara>
</listitem>
</varlistentry>
@@ -60,10 +60,10 @@
<term > '<link linkend= "reserved.variables.argv" > argv</link> '</term>
<listitem >
<simpara >
Массив аргументов, переданных скрипту. Когда скрипт
запущен в командой строке, это даёт C-подобный доступ
к параметрам командной строки. Когда вызывается через метод GET,
этот массив будет содержать строку запроса.
Массив аргументов, которые передали скрипту. При запуске скрипта
в командой строке это даёт C-подобный доступ
к параметрам командной строки. При вызове через метод GET
этот массив содержит строку запроса.
</simpara>
</listitem>
</varlistentry>
@@ -72,8 +72,8 @@
<term > '<link linkend= "reserved.variables.argc" > argc</link> '</term>
<listitem >
<simpara >
Содержит количество параметров, переданных скрипту
( если запуск произведён в командной строке) .
Содержит количество параметров, которые передали скрипту,
если скрипт запустили в командной строке.
</simpara>
</listitem>
</varlistentry>
@@ -82,8 +82,8 @@
<term > '<varname > GATEWAY_INTERFACE</varname> '</term>
<listitem >
<simpara >
Содержит используемую сервером версию спецификации CGI;
к примеру <literal > 'CGI/1.1'</literal> ..
Содержит используемую сервером версию спецификации CGI-интерфейса ;
на пример <literal > 'CGI/1.1'</literal> ..
</simpara>
</listitem>
</varlistentry>
@@ -92,7 +92,7 @@
<term > '<varname > SERVER_ADDR</varname> '</term>
<listitem >
<simpara >
IP-адрес сервера, на котором выполняется текущий скрипт.
IP-адрес сервера, по которому выполняется текущий скрипт.
</simpara>
</listitem>
</varlistentry>
@@ -102,16 +102,16 @@
<listitem >
<simpara >
Имя хоста, на котором выполняется текущий скрипт.
Если скрипт выполняется на виртуальном хосте ,
здесь будет содержатся имя, определённое для этого виртуальног о хоста .
Переменная содержит имя, которое определили для виртуальног о хоста ,
если скрипт выполняется на виртуальном хосте .
</simpara>
<note >
<simpara >
В Apache 2 необходимо установить <literal > UseCanonicalName = On</literal> и
<literal > ServerName</literal> .
В противном случае это значение отразит имя хоста, предоставленное
клиентом, которое может быть подделано .
Небезопасно полагаться на это значение в контексте, требующем безопасности.
В Apache 2 потребуется установить директивы <literal > UseCanonicalName = On</literal>
и <literal > ServerName</literal> ,
иначе значение отразит имя хоста, которое предостави л
клиент и которое подделывают злоумышленники .
Небезопасно полагаться на это значение в контексте, который требует безопасности.
</simpara>
</note>
</listitem>
@@ -132,7 +132,7 @@
<listitem >
<simpara >
Имя и версия информационного протокола, через который
была запрошена страница ; к примеру <literal > 'HTTP/1.0'</literal> ;
запросили страницу ; на пример <literal > 'HTTP/1.0'</literal> ;
</simpara>
</listitem>
</varlistentry>
@@ -141,14 +141,14 @@
<term > '<varname > REQUEST_METHOD</varname> '</term>
<listitem >
<simpara >
Какой метод был использован для запроса страницы ; к примеру <literal > 'GET'</literal> ,
Метод, которым запросили страницу ; на пример <literal > 'GET'</literal> ,
<literal > 'HEAD'</literal> , <literal > 'POST'</literal> , <literal > 'PUT'</literal> .
</simpara>
<note >
<para >
PHP-скрипт завершается после отправки заголовков (то есть после того, как
осуществляется любой вывод без буферизации вывода), если метод запроса был
<literal > HEAD</literal> .
При запросе методом <literal > HEAD</literal>
PHP-скрипт завершается после отправки заголовков — после
любого вывода без буферизации вывода .
</para>
</note>
</listitem>
@@ -158,7 +158,7 @@
<term > '<varname > REQUEST_TIME</varname> '</term>
<listitem >
<simpara >
Временная метка начала запроса.
Метка времени начала запроса.
</simpara>
</listitem>
</varlistentry>
@@ -167,7 +167,7 @@
<term > '<varname > REQUEST_TIME_FLOAT</varname> '</term>
<listitem >
<simpara >
Временная метка начала запроса с точностью до микросекунд.
Метка времени начала запроса с точностью до микросекунд.
</simpara>
</listitem>
</varlistentry>
@@ -176,7 +176,7 @@
<term > '<varname > QUERY_STRING</varname> '</term>
<listitem >
<simpara >
Строка запроса, если есть, через которую была открыта страница .
Строка запроса, если адрес содержит такую, через которую получили доступ к странице .
</simpara>
</listitem>
</varlistentry>
@@ -186,7 +186,7 @@
<listitem >
<simpara >
Директория корня документов, в которой выполняется текущий скрипт,
в точности та, которая указана в конфигурационном файле сервера.
в точности та, которую указали в конфигурационном файле сервера.
</simpara>
</listitem>
</varlistentry>
@@ -195,7 +195,7 @@
<term > '<varname > HTTPS</varname> '</term>
<listitem >
<simpara >
Принимает непустое значение, если запрос был произведён через протокол HTTPS.
Принимает непустое значение, если запрос выполнили через протокол HTTPS.
</simpara>
</listitem>
</varlistentry>
@@ -219,10 +219,10 @@
</simpara>
<note >
<simpara >
Сервер должен быть настроен , чтобы создавать эту переменную.
Для примера , в Apache необходимо присутствие директивы
Сервер потребуется настроить , чтобы создавать эту переменную.
Н а пример, для веб-сервера Apache потребуется указать директиву
<literal > HostnameLookups On</literal> в файле &httpd.conf; , чтобы эта
переменная создавалась. Смотрите также <function > gethostbyaddr</function> .
переменная создавалась. Смотрите также описание функции <function > gethostbyaddr</function> .
</simpara>
</note>
</listitem>
@@ -232,7 +232,7 @@
<term > '<varname > REMOTE_PORT</varname> '</term>
<listitem >
<simpara >
Порт на удалённой машине, который используется для связи с сервером.
Порт на удалённой машине, на котором устанавливается соединение с сервером.
</simpara>
</listitem>
</varlistentry>
@@ -250,7 +250,7 @@
<term > '<varname > REDIRECT_REMOTE_USER</varname> '</term>
<listitem >
<simpara >
Аутентифицированный пользователь, если запрос был перенаправлен изнутри.
Аутентифицированный пользователь, если запрос перенаправлен изнутри.
</simpara>
</listitem>
</varlistentry>
@@ -262,11 +262,11 @@
Абсолютный путь к исполняемому скрипту.
<note >
<para >
Если скрипт запускается в командной строке (CLI), используя
относительный путь, та кой как <filename > file.php</filename> или
<filename > ../file.php</filename> , переменная
<varname > $_SERVER['SCRIPT_FILENAME']</varname> будет
содержать относительный путь, указанный пользователем .
Переменная <varname > $_SERVER['SCRIPT_FILENAME']</varname>
содержит относительный путь, которы й у казал пользователь,
если скрипт запустили в командной строке (CLI)
по относительному пути наподобие <filename > file.php</filename>
или <filename > ../file.php</filename> .
</para>
</note>
</para>
@@ -277,10 +277,10 @@
<term > '<varname > SERVER_ADMIN</varname> '</term>
<listitem >
<simpara >
Эта переменная получает своё значение (для Apache) из директивы
конфигурационног о файла сервера. Если скрипт запущен н а
виртуальном хосте, это будет значение,
определённое для данн о г о виртуального хоста.
Значение директивы SERVER_ADMIN веб-сервера Apache,
которое указали в ко нфигурационном файле сервера. При запуске скрипт а
на виртуальном хосте значение
определяется для эт о г о виртуального хоста.
</simpara>
</listitem>
</varlistentry>
@@ -289,19 +289,19 @@
<term > '<varname > SERVER_PORT</varname> '</term>
<listitem >
<simpara >
Порт на компьютере сервера, используемый сервером для соединения .
Для установок по умолчанию, значение будет <literal > '80'</literal> ;
используя SSL, например, это значение будет таким, какое сконфигурировано
для соединений безопасного HTTP .
Порт, на котором сервер принимает запросы .
При стандартной конфигурации сервера переменная содержит значение <literal > '80'</literal> ;
для соединений по протоколу SSL, например, значение переменной соответствует
порту, который определили для защищённых HTTP-соединений .
</simpara>
<note >
<simpara >
Чтобы получить физический (реальный) порт в Apache 2, необходимо
установить <literal > UseCanonicalName = On</literal> и
<literal > UseCanonicalPhysicalPort = On</literal> , иначе это значение
может быть подменено и не вернуть реальной значение физического порта.
Полагаться на это значение небезопасно в контексте приложений, требующих
усиленной безопасности .
Н а веб-сервере Apache 2 потребуется установить директивы
установить <literal > UseCanonicalName = On</literal>
и <literal > UseCanonicalPhysicalPort = On</literal> , чтобы получить реальный физический порт,
иначе значение подделают и переменная не вернёт реальное значение физического порта.
В контекстах, которые требуют усиленной безопасности,
полагаться на это значение не безопасно.
</simpara>
</note>
</listitem>
@@ -311,8 +311,9 @@
<term > '<varname > SERVER_SIGNATURE</varname> '</term>
<listitem >
<simpara >
Строка, содержащая версию сервера и имя виртуального хоста, которые
добавляются к генерируемым сервером страницам, если включено.
Строка, которая содержит версию сервера и имя виртуального хоста. Эта информация
добавляются на страницы, которые генерирует сервер, если в конфигурации сервера
включили директиву, которая отвечает за добавление такой строки.
</simpara>
</listitem>
</varlistentry>
@@ -321,13 +322,14 @@
<term > '<varname > PATH_TRANSLATED</varname> '</term>
<listitem >
<simpara >
Путь файловой системы (не document root) к текущему скрипту, после того как сервер выполнил отображ ение virtual-to-real.
Путь к текущему скрипту после выполнения сервером сопоставл ения virtual-to-real.
Путь строится на основе файловой системы, а не на основе корневого каталога сервера.
</simpara>
<note >
<simpara >
Пользователи Apache 2 могут использовать директиву
Пользователи Apache 2 включают директиву
<literal > AcceptPathInfo = On</literal> в конфигурационном файле
<filename > httpd.conf</filename> для зада ния переменной <envar > PATH_INFO</envar> .
<filename > httpd.conf</filename> , чтобы определить значе ние переменной <envar > PATH_INFO</envar> .
</simpara>
</note>
</listitem>
@@ -337,10 +339,10 @@
<term > '<varname > SCRIPT_NAME</varname> '</term>
<listitem >
<simpara >
Содержит п уть к текущему исполняемому скрипту. Это полезно для страниц,
которые должны указывать на самих себя.
Константа <link linkend= "language.constants.predefined" > __FILE__</link>
содержит полный путь и имя текущего (то есть включённого) файла .
П уть к текущему исполняемому скрипту. Переменная полезна на страница х ,
которым требуется указывать на самих себя.
Полный путь и название текущего включаемого файла
содержит константа <link linkend= "language.constants.magic" > __FILE__</link> .
</simpara>
</listitem>
</varlistentry>
@@ -349,8 +351,8 @@
<term > '<varname > REQUEST_URI</varname> '</term>
<listitem >
<simpara >
URI, который был предоставлен для доступа к этой странице.
Например, '<literal > /index.html</literal> ' .
URI-идентификатор наподобие '<literal > /index.html</literal> ',
который указали для доступа к странице .
</simpara>
</listitem>
</varlistentry>
@@ -359,9 +361,9 @@
<term > '<varname > PHP_AUTH_DIGEST</varname> '</term>
<listitem >
<simpara >
При выполнении аутентификации HTTP Digest этой переменной присваивается
заголово к 'Authorization', отправленный клиентом ( который затем следует
использовать для проведения соответствующей проверки) .
При HTTP- аутентификации по дайджесту переменной присваивается
значение заголовка 'Authorization', который отправил клиент и которо е затем
проверяют .
</simpara>
</listitem>
</varlistentry>
@@ -370,8 +372,8 @@
<term > '<varname > PHP_AUTH_USER</varname> '</term>
<listitem >
<simpara >
При выполнении HTTP-аутентификации этой переменной присваивается
имя пользователя, предоставленное пользователем .
При выполнении HTTP-аутентификации переменной присваивается
имя пользователя, которое предостави л пользователь .
</simpara>
</listitem>
</varlistentry>
@@ -380,8 +382,8 @@
<term > '<varname > PHP_AUTH_PW</varname> '</term>
<listitem >
<simpara >
При выполнении HTTP-аутентификации этой переменной присваивается
пароль, предоставленный пользователем .
При выполнении HTTP-аутентификации переменной присваивается
пароль, которое предостави л пользователь .
</simpara>
</listitem>
</varlistentry>
@@ -390,8 +392,8 @@
<term > '<varname > AUTH_TYPE</varname> '</term>
<listitem >
<simpara >
При выполнении HTTP-аутентификации этой переменной присваивается
тип аутентификации, который используется .
При выполнении HTTP-аутентификации переменной присваивается
тип аутентификации, который сервер устанавливает на основе клиентских данных .
</simpara>
</listitem>
</varlistentry>
@@ -400,12 +402,12 @@
<term > '<varname > PATH_INFO</varname> '</term>
<listitem >
<simpara >
Содержит любой предоставленный пользователем путь, содержащийся после
име ни скрипта, но до строки запроса, если она есть .
Например, если текущий скрипт запрошен по URL
<filename > http://www.example.com/php/path_info.php/some/stuff?foo=bar</filename > ,
то переменная <varname > $_SERVER['PATH_INFO']</varname> будет содержать
<literal > /some/stuff</literal > .
Содержит информацию о пути, которую предоставил клиент. Значение идёт
после фактического назва ния скрипта, но до строки запроса, если строку запроса указали .
Переменная <varname > $_SERVER['PATH_INFO']</varname> получит значение
<literal > /some/stuff</literal > ,
если текущий скрипт запросили по URL-адресу наподобие
<filename > http://www.example.com/php/path_info.php/some/stuff?foo=bar</filename > .
</simpara>
</listitem>
</varlistentry>
@@ -428,11 +430,13 @@
&reftitle.examples;
<para >
<example xml:id= "variable.server.basic" >
<title > Пример использования <varname > $_SERVER</varname> </title>
<title > Пример вывода значения переменной <varname > $_SERVER</varname> </title>
<programlisting role= "php" >
<![CDATA[
<?php
echo $_SERVER['SERVER_NAME'];
?>
]]>
</programlisting>