mirror of
https://github.com/php/doc-ru.git
synced 2026-03-26 00:32:15 +01:00
Done using the following commands: find ./language/predefined/variables/ -type f -name "*.xml" -exec sed -i 's+<phpdoc:varentry xmlns:phpdoc="http://php.net/ns/phpdoc"+<refentry role="variable"+g' {} + find ./language/predefined/variables/ -type f -name "*.xml" -exec sed -i 's+</phpdoc:varentry>+</refentry>+g' {} + Applies commit a6d209f4ff71ccba3f1255902827f5df3e092ff9 from doc-en
484 lines
19 KiB
XML
484 lines
19 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: b767006c8672c9e8ecec8429bb4f3be8889bde6b 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>
|
||
<refname>$_SERVER</refname>
|
||
<refpurpose>Информация о сервере и среде исполнения</refpurpose>
|
||
</refnamediv>
|
||
|
||
<refsect1 role="description">
|
||
&reftitle.description;
|
||
<para>
|
||
Переменная <varname>$_SERVER</varname> - это массив (&array;), содержащий такую информацию,
|
||
как заголовки, пути и местоположения скриптов.
|
||
Записи в этом массиве создаются веб-сервером, поэтому нет гарантии, что каждый веб-сервер будет
|
||
предоставлять любую из этих переменных; серверы могут опускать некоторые из них или предоставлять другие,
|
||
не указанные здесь.
|
||
Однако большинство из этих переменных учтены в спецификации
|
||
<link xlink:href="&url.rfc;3875">CGI/1.1</link> и, скорее всего, будут определены.
|
||
</para>
|
||
<note>
|
||
<simpara>
|
||
При запуске PHP в <link linkend="features.commandline">командной строке</link>
|
||
большинство из этих записей будут недоступны или не будут иметь никакого значения.
|
||
</simpara>
|
||
</note>
|
||
<para>
|
||
В дополнение к перечисленным ниже элементам, PHP будет создавать дополнительные элементы
|
||
со значениями из заголовков запросов. У элементов будет имя <literal>HTTP_</literal>,
|
||
за которым следует имя заголовка, написанное с заглавной буквы и с подчёркиванием вместо дефиса.
|
||
Например, заголовок <literal>Accept-Language</literal> будет доступен как <code>$_SERVER['HTTP_ACCEPT_LANGUAGE']</code>.
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="indices">
|
||
&reftitle.indices;
|
||
|
||
<para>
|
||
<variablelist>
|
||
<varlistentry>
|
||
<term>'<varname>PHP_SELF</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Имя файла скрипта, который сейчас выполняется, относительно
|
||
корня документов. Например, <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>
|
||
содержит полный путь и имя файла текущего (то есть
|
||
подключённого) файла.
|
||
</simpara>
|
||
<simpara>
|
||
Если PHP запущен в командной строке, эта переменная содержит
|
||
имя скрипта.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<link linkend="reserved.variables.argv">argv</link>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Массив аргументов, переданных скрипту. Когда скрипт
|
||
запущен в командой строке, это даёт C-подобный доступ
|
||
к параметрам командной строки. Когда вызывается через метод GET,
|
||
этот массив будет содержать строку запроса.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<link linkend="reserved.variables.argc">argc</link>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Содержит количество параметров, переданных скрипту
|
||
(если запуск произведён в командной строке).
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>GATEWAY_INTERFACE</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Содержит используемую сервером версию спецификации CGI;
|
||
к примеру <literal>'CGI/1.1'</literal>..
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_ADDR</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
IP-адрес сервера, на котором выполняется текущий скрипт.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_NAME</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Имя хоста, на котором выполняется текущий скрипт.
|
||
Если скрипт выполняется на виртуальном хосте,
|
||
здесь будет содержатся имя, определённое для этого виртуального хоста.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
В Apache 2 необходимо установить <literal>UseCanonicalName = On</literal> и
|
||
<literal>ServerName</literal>.
|
||
В противном случае это значение отразит имя хоста, предоставленное
|
||
клиентом, которое может быть подделано.
|
||
Небезопасно полагаться на это значение в контексте, требующем безопасности.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_SOFTWARE</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Строка идентификации сервера, указанная в заголовках,
|
||
когда происходит ответ на запрос.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_PROTOCOL</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Имя и версия информационного протокола, через который
|
||
была запрошена страница; к примеру <literal>'HTTP/1.0'</literal>;
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REQUEST_METHOD</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Какой метод был использован для запроса страницы; к примеру <literal>'GET'</literal>,
|
||
<literal>'HEAD'</literal>, <literal>'POST'</literal>, <literal>'PUT'</literal>.
|
||
</simpara>
|
||
<note>
|
||
<para>
|
||
PHP-скрипт завершается после отправки заголовков (то есть после того, как
|
||
осуществляется любой вывод без буферизации вывода), если метод запроса был
|
||
<literal>HEAD</literal>.
|
||
</para>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REQUEST_TIME</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Временная метка начала запроса.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REQUEST_TIME_FLOAT</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Временная метка начала запроса с точностью до микросекунд.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>QUERY_STRING</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Строка запроса, если есть, через которую была открыта страница.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>DOCUMENT_ROOT</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Директория корня документов, в которой выполняется текущий скрипт,
|
||
в точности та, которая указана в конфигурационном файле сервера.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>HTTPS</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Принимает непустое значение, если запрос был произведён через протокол HTTPS.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REMOTE_ADDR</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
IP-адрес, с которого пользователь просматривает текущую страницу.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REMOTE_HOST</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Удалённый хост, с которого пользователь просматривает текущую
|
||
страницу. Обратный поиск DNS основан на значении переменной
|
||
<varname>REMOTE_ADDR</varname>.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Сервер должен быть настроен, чтобы создавать эту переменную.
|
||
Для примера, в Apache необходимо присутствие директивы
|
||
<literal>HostnameLookups On</literal> в файле &httpd.conf;, чтобы эта
|
||
переменная создавалась. Смотрите также <function>gethostbyaddr</function>.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REMOTE_PORT</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Порт на удалённой машине, который используется для связи с сервером.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REMOTE_USER</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Аутентифицированный пользователь.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REDIRECT_REMOTE_USER</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Аутентифицированный пользователь, если запрос был перенаправлен изнутри.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SCRIPT_FILENAME</varname>'</term>
|
||
<listitem>
|
||
<para>
|
||
Абсолютный путь к исполняемому скрипту.
|
||
<note>
|
||
<para>
|
||
Если скрипт запускается в командной строке (CLI), используя
|
||
относительный путь, такой как <filename>file.php</filename> или
|
||
<filename>../file.php</filename>, переменная
|
||
<varname>$_SERVER['SCRIPT_FILENAME']</varname> будет
|
||
содержать относительный путь, указанный пользователем.
|
||
</para>
|
||
</note>
|
||
</para>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_ADMIN</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Эта переменная получает своё значение (для Apache) из директивы
|
||
конфигурационного файла сервера. Если скрипт запущен на
|
||
виртуальном хосте, это будет значение,
|
||
определённое для данного виртуального хоста.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_PORT</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Порт на компьютере сервера, используемый сервером для соединения.
|
||
Для установок по умолчанию, значение будет <literal>'80'</literal>;
|
||
используя SSL, например, это значение будет таким, какое сконфигурировано
|
||
для соединений безопасного HTTP.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Чтобы получить физический (реальный) порт в Apache 2, необходимо
|
||
установить <literal>UseCanonicalName = On</literal> и
|
||
<literal>UseCanonicalPhysicalPort = On</literal>, иначе это значение
|
||
может быть подменено и не вернуть реальной значение физического порта.
|
||
Полагаться на это значение небезопасно в контексте приложений, требующих
|
||
усиленной безопасности.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SERVER_SIGNATURE</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Строка, содержащая версию сервера и имя виртуального хоста, которые
|
||
добавляются к генерируемым сервером страницам, если включено.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>PATH_TRANSLATED</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Путь файловой системы (не document root) к текущему скрипту, после того как сервер выполнил отображение virtual-to-real.
|
||
</simpara>
|
||
<note>
|
||
<simpara>
|
||
Пользователи Apache 2 могут использовать директиву
|
||
<literal>AcceptPathInfo = On</literal> в конфигурационном файле
|
||
<filename>httpd.conf</filename> для задания переменной <envar>PATH_INFO</envar>.
|
||
</simpara>
|
||
</note>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>SCRIPT_NAME</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Содержит путь к текущему исполняемому скрипту. Это полезно для страниц,
|
||
которые должны указывать на самих себя.
|
||
Константа <link linkend="language.constants.predefined">__FILE__</link>
|
||
содержит полный путь и имя текущего (то есть включённого) файла.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>REQUEST_URI</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
URI, который был предоставлен для доступа к этой странице.
|
||
Например, '<literal>/index.html</literal>'.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>PHP_AUTH_DIGEST</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
При выполнении аутентификации HTTP Digest этой переменной присваивается
|
||
заголовок 'Authorization', отправленный клиентом (который затем следует
|
||
использовать для проведения соответствующей проверки).
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>PHP_AUTH_USER</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
При выполнении HTTP-аутентификации этой переменной присваивается
|
||
имя пользователя, предоставленное пользователем.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>PHP_AUTH_PW</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
При выполнении HTTP-аутентификации этой переменной присваивается
|
||
пароль, предоставленный пользователем.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>AUTH_TYPE</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
При выполнении HTTP-аутентификации этой переменной присваивается
|
||
тип аутентификации, который используется.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<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>.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
<varlistentry>
|
||
<term>'<varname>ORIG_PATH_INFO</varname>'</term>
|
||
<listitem>
|
||
<simpara>
|
||
Исходное значение переменной '<varname>PATH_INFO</varname>' перед
|
||
обработкой PHP.
|
||
</simpara>
|
||
</listitem>
|
||
</varlistentry>
|
||
|
||
</variablelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="examples">
|
||
&reftitle.examples;
|
||
<para>
|
||
<example xml:id="variable.server.basic">
|
||
<title>Пример использования <varname>$_SERVER</varname></title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
echo $_SERVER['SERVER_NAME'];
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
&example.outputs.similar;
|
||
<screen>
|
||
<![CDATA[
|
||
www.example.com
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
</refsect1>
|
||
|
||
<refsect1 role="notes">
|
||
&reftitle.notes;
|
||
¬e.is-superglobal;
|
||
</refsect1>
|
||
|
||
<refsect1 role="seealso">
|
||
&reftitle.seealso;
|
||
<para>
|
||
<simplelist>
|
||
<member><link linkend="book.filter">Фильтрация данных</link></member>
|
||
</simplelist>
|
||
</para>
|
||
</refsect1>
|
||
|
||
</refentry>
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|