<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/configuration.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ru',
  ),
  'this' => 
  array (
    0 => 'configuration.changes.php',
    1 => 'Как изменить настройки конфигурации',
    2 => 'Как изменить настройки конфигурации',
  ),
  'up' => 
  array (
    0 => 'configuration.php',
    1 => 'Конфигурация времени выполнения',
  ),
  'prev' => 
  array (
    0 => 'configuration.changes.modes.php',
    1 => 'Места установки параметров конфигурации',
  ),
  'next' => 
  array (
    0 => 'langref.php',
    1 => 'Справочник языка',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'install/ini.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="configuration.changes" class="sect1">
  <h2 class="title">Как изменить настройки конфигурации</h2>

  <div class="sect2" id="configuration.changes.apache">
   <h3 class="title">Запуск PHP в качестве модуля Apache</h3>
   <p class="simpara">
    Когда PHP работает как модуль Apache,
    настройки конфигурации изменяют через директивы в файлах конфигурации Apache
    (например, <var class="filename">httpd.conf</var>) и файлах <var class="filename">.htaccess</var>. Для этого потребуются
    привилегии «AllowOverride Options» или «AllowOverride All».
   </p>

   <p class="para">
    В Apache предусмотрели директивы, которые разрешают
    изменить конфигурацию PHP в файлах конфигурации Apache.
    Список директив <strong><code><a href="info.constants.php#constant.ini-all">INI_ALL</a></code></strong>, <strong><code><a href="info.constants.php#constant.ini-perdir">INI_PERDIR</a></code></strong>
    и <strong><code><a href="info.constants.php#constant.ini-system">INI_SYSTEM</a></code></strong> смотрите в приложении
    «<a href="ini.list.php" class="link">Список директив php.ini</a>».
   </p>

   <p class="para">
    <dl>
     
      <dt>
       <code class="systemitem systemitem">php_value</code>
       <code class="parameter">name</code>
       <code class="parameter">value</code>
      </dt>
      <dd>
       <p class="para">
        Устанавливает значение директивы.
        Разрешено указывать только с директивами
        типа <strong><code><a href="info.constants.php#constant.ini-all">INI_ALL</a></code></strong> и <strong><code><a href="info.constants.php#constant.ini-perdir">INI_PERDIR</a></code></strong>.
        Чтобы очистить ранее установленное значение,
        в качестве значения указывают <code class="literal">none</code>.
       </p>
       <blockquote class="note"><p><strong class="note">Замечание</strong>: 
        <span class="simpara">
         Не используйте директиву
         <code class="systemitem systemitem">php_value</code> для установки логических значений.
         Эту функцию выполняет
         директива <code class="systemitem systemitem">php_flag</code>; её описание ниже.
        </span>
       </p></blockquote>
      </dd>
     
     
      <dt>
       <code class="systemitem systemitem">php_flag</code>
       <code class="parameter">name</code>
       <code class="parameter">on|off</code>
      </dt>
      <dd>
       <p class="para">
        Устанавливает директивам логические значения.
        Разрешено указывать только с директивами типа <strong><code><a href="info.constants.php#constant.ini-all">INI_ALL</a></code></strong> и
        <strong><code><a href="info.constants.php#constant.ini-perdir">INI_PERDIR</a></code></strong>.
       </p>
      </dd>
     
     
      <dt>
       <code class="systemitem systemitem">php_admin_value</code>
       <code class="parameter">name</code>
       <code class="parameter">value</code>
      </dt>
      <dd>
       <p class="para">
        Устанавливает значение директивы.
        <em>Нельзя указывать</em> в файлах <var class="filename">.htaccess</var>.
        Директивы любого типа, установленные через директиву
        <code class="systemitem systemitem">php_admin_value</code>,
        нельзя переопределять через файлы <var class="filename">.htaccess</var> или функцию <span class="function"><a href="function.ini-set.php" class="function">ini_set()</a></span>.
        Чтобы очистить ранее установленное значение, указывают значение <code class="literal">none</code>.
       </p>
      </dd>
     
     
      <dt>
       <code class="systemitem systemitem">php_admin_flag</code>
       <code class="parameter">name</code>
       <code class="parameter">on|off</code>
      </dt>
      <dd>
       <p class="para">
        Устанавливает директивам логические значения.
        <em>Нельзя указывать</em> в файлах <var class="filename">.htaccess</var>.
        Директивы любого типа, установленные через директиву
        <code class="systemitem systemitem">php_admin_flag</code>,
        нельзя переопределять через файлы <var class="filename">.htaccess</var> или функцию <span class="function"><a href="function.ini-set.php" class="function">ini_set()</a></span>.
       </p>
      </dd>
     
    </dl>
   </p>
   <p class="para">
    <div class="example" id="example-1">
     <p><strong>Пример #1 Пример конфигурации Apache</strong></p>
     <div class="example-contents">
<div class="inicode"><pre class="inicode">&lt;IfModule mod_php5.c&gt;
  php_value include_path &quot;.:/usr/local/lib/php&quot;
  php_admin_flag engine on
&lt;/IfModule&gt;
&lt;IfModule mod_php4.c&gt;
  php_value include_path &quot;.:/usr/local/lib/php&quot;
  php_admin_flag engine on
&lt;/IfModule&gt;</pre>
</div>
     </div>

    </div>
   </p>
   <div class="caution"><strong class="caution">Предостережение</strong>
    <p class="para">
     PHP-константы недоступны вне PHP. Например, в
     <var class="filename">httpd.conf</var> вы не можете использовать константы PHP
     такие как <strong><code><a href="errorfunc.constants.php#constant.e-all">E_ALL</a></code></strong> или <strong><code><a href="errorfunc.constants.php#constant.e-notice">E_NOTICE</a></code></strong>,
     чтобы установить директиву <a href="errorfunc.configuration.php#ini.error-reporting" class="link">error_reporting</a>,
     так как они не будут иметь значения и будут приравниваться к <em>0</em>.
     Используйте вместо этого соответствующие значения типа bitmask (битовая маска).
     Эти константы могут быть использованы в <var class="filename">php.ini</var>
    </p>
   </div>
  </div>

  <div class="sect2" id="configuration.changes.windows">
   <h3 class="title">Изменение конфигурации PHP через реестр Windows</h3>
   <p class="simpara">
    При использовании PHP в Windows значения конфигурации могут быть
    изменены на уровне директории посредством реестра Windows.
    Значения конфигурации хранятся в ключе реестра
    <code class="literal">HKLM\SOFTWARE\PHP\Per Directory Values</code>,
    в подключах, включающих полный путь. Например, значения конфигурации для директории
    <code class="literal">c:\inetpub\wwwroot</code> могут храниться в ключе
    <code class="literal">HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot</code>.
    Настройки для директории будут действительны для любых скриптов, запущенных из
    этой директории или её поддиректории. Значения ключа должны иметь название
    конфигурационной директивы PHP и строковое значение.
    PHP-константы в значениях игнорируются.
    Однако только значения конфигурации, изменяемые в
    <strong><code><a href="info.constants.php#constant.ini-user">INI_USER</a></code></strong> могут быть установлены таким образом,
    значения же <strong><code><a href="info.constants.php#constant.ini-perdir">INI_PERDIR</a></code></strong> не могут,
    потому что эти значения конфигурации перечитываются для каждого запроса.
   </p>
  </div>

  <div class="sect2" id="configuration.changes.other">
   <h3 class="title">Другие интерфейсы в PHP</h3>
   <p class="para">
    Независимо от того, как вы запускаете PHP, вы можете изменять некоторые значения
    во время выполнения ваших скриптов c помощью <span class="function"><a href="function.ini-set.php" class="function">ini_set()</a></span>. Для более
    детальной информации смотрите документацию на странице функции <span class="function"><a href="function.ini-set.php" class="function">ini_set()</a></span>.
   </p>
   <p class="para">
    Если вам интересен полный список конфигурационных настроек
    вашей системы с текущими значениями, то вы можете запустить функцию
    <span class="function"><a href="function.phpinfo.php" class="function">phpinfo()</a></span> и просмотреть результирующую
    страницу. Вы также можете получить доступ к значениям индивидуально сконфигурированных
    директив в процессе выполнения, используя <span class="function"><a href="function.ini-get.php" class="function">ini_get()</a></span> или
    <span class="function"><a href="function.get-cfg-var.php" class="function">get_cfg_var()</a></span>.
   </p>
  </div>
 </div><?php manual_footer($setup); ?>