mirror of
https://github.com/php/doc-ru.git
synced 2025-08-16 18:22:04 +00:00
265 lines
15 KiB
XML
265 lines
15 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 17fc359d7eb75d7d6199db77518924f2d351ed8b Maintainer: rjhdby Status: ready -->
|
||
<!-- Reviewed: yes Maintainer: sergey -->
|
||
<!-- $Revision$ -->
|
||
<sect2 xml:id="install.windows.legacy.manual" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||
<title>Руководство по ручной установке</title>
|
||
<para>
|
||
Этот раздел содержит инструкции для ручной установки и настройки
|
||
PHP на Microsoft Windows.
|
||
</para>
|
||
<sect3 xml:id="install.windows.legacy.manual.download">
|
||
<title>Выбор и загрузка пакета дистрибутивов PHP</title>
|
||
<para>
|
||
Загрузите дистрибутив PHP в виде zip-архива с
|
||
<link xlink:href="&url.php.win.downloads;">PHP для Windows: Исполняемые файлы и исходные коды</link>.
|
||
Существует несколько различных версий zip-пакетов — выберите версию, которая подходит для
|
||
используемого веб сервера:
|
||
</para>
|
||
</sect3>
|
||
<sect3 xml:id="install.windows.legacy.manual.package">
|
||
<title>Структура и содержание пакета PHP</title>
|
||
<para>
|
||
Распакуйте содержимое zip архива в директорию на ваш выбор, например, C:\PHP\.
|
||
Структура папок и файлов, извлечённых из архива, будет выглядеть следующим образом:
|
||
<example>
|
||
<title>Структура пакета PHP 5</title>
|
||
<programlisting>
|
||
<![CDATA[
|
||
|
||
c:\php
|
||
|
|
||
+--dev
|
||
| |
|
||
| |-php5ts.lib -- версия php5.lib без поддержки многопоточности
|
||
|
|
||
+--ext -- DLL модули для PHP
|
||
| |
|
||
| |-php_bz2.dll
|
||
| |
|
||
| |-php_cpdf.dll
|
||
| |
|
||
| |-...
|
||
|
|
||
+--extras -- пустой
|
||
|
|
||
+--pear -- начальная копия PEAR
|
||
|
|
||
|
|
||
|-go-pear.bat -- скрипт установки PEAR
|
||
|
|
||
|-...
|
||
|
|
||
|-php-cgi.exe -- исполняемый файл CGI
|
||
|
|
||
|-php-win.exe -- выполняет скрипты без открытой консоли
|
||
|
|
||
|-php.exe -- Исполняемый файл PHP для командной строки (CLI)
|
||
|
|
||
|-...
|
||
|
|
||
|-php.ini-development -- настройки php.ini по умолчанию
|
||
|
|
||
|-php.ini-production -- рекомендуемые настройки php.ini
|
||
|
|
||
|-php5apache2_2.dll -- есть только в многопоточной версии
|
||
|
|
||
|-php5apache2_2_filter.dll -- есть только в многопоточной версии
|
||
|
|
||
|-...
|
||
|
|
||
|-php5ts.dll -- ядро PHP DLL ( php5.dll в версии без поддержки многопоточности)
|
||
|
|
||
|-...
|
||
|
||
]]>
|
||
</programlisting>
|
||
</example>
|
||
</para>
|
||
<para>
|
||
Ниже представлен список модулей и исполняемых файлов, включённых в PHP zip
|
||
дистрибутив:
|
||
<itemizedlist spacing="compact">
|
||
<listitem>
|
||
<para>
|
||
<filename>go-pear.bat</filename> - скрипт установки PEAR. Подробнее смотрите
|
||
<link xlink:href="&url.pear.installation;">Установка (PEAR)</link>.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<filename>php-cgi.exe</filename> - исполняемый файл CGI, который может быть использован во время запуска PHP
|
||
на IIS через CGI или FastCGI.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<filename>php-win.exe</filename> - исполняемый файл PHP для выполнения PHP-скриптов без использования консоли
|
||
(например, приложения PHP, использующие Windows GUI).
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<filename>php.exe</filename> - исполняемый файл PHP для выполнения PHP-скриптов в консоли (CLI).
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<filename>php5apache2_2.dll</filename> - модуль Apache 2.2.X.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<filename>php5apache2_2_filter.dll</filename> - фильтр Apache 2.2.X.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
</sect3>
|
||
<sect3 xml:id="install.windows.legacy.manual.phpini">
|
||
<title>Изменение файла <filename>php.ini</filename></title>
|
||
<para>
|
||
После того, как содержимое пакета php извлечено, создайте копию <filename>php.ini-production</filename> с именем <filename>php.ini</filename>
|
||
в той же папке. Если необходимо, также возможно разместить <filename>php.ini</filename> в любом другом месте по вашему выбору,
|
||
но это потребует дополнительной настройки, которая приводится в разделе <link linkend="configuration.file">Настройка PHP</link>.
|
||
</para>
|
||
<para>
|
||
Файл <filename>php.ini</filename> содержит правила исполнения PHP и инструкции по работе с
|
||
окружением, в котором он запускается. Ниже приводятся некоторые из настроек <filename>php.ini</filename>,
|
||
которые могут улучшить работу PHP в Windows. Некоторые из них необязательные. Есть
|
||
много других директив, которые могут быть полезны в вашем окружении - обращайтесь к
|
||
<link linkend="ini.list">списку директив php.ini</link> за более подробной информацией.
|
||
</para>
|
||
<para>
|
||
Обязательные директивы:
|
||
<itemizedlist spacing="compact">
|
||
<listitem>
|
||
<para>
|
||
<varname>extension_dir</varname> = <literal><путь к директории модулей></literal> - <varname>extension_dir</varname>
|
||
указывает директорию, где расположены модули PHP. Путь может быть абсолютным
|
||
(например, "C:\PHP\ext") или относительным (например, ".\ext"). Используемые в <filename>php.ini</filename> модули
|
||
должны быть расположены в <varname>extension_dir</varname>.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>extension</varname> = <literal>xxxxx.dll</literal> - Для каждого подключаемого модуля необходимо указать директиву "extension=".
|
||
Модули из <varname>extension_dir</varname>, отмеченные такой директивой, загружаются при старте PHP.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>log_errors</varname> = <literal>On</literal> - в PHP есть механизм ведения лога ошибок, который может использоваться для сохранения ошибок в файле
|
||
или для отправки в сервис (например syslog). Механизм также использует значение директивы <varname>error_log</varname>. Когда PHP исполняется службой IIS,
|
||
<varname>log_errors</varname> должен быть включён с корректным <varname>error_log</varname>.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>error_log</varname> = <literal><пусть к файлу лога ошибок></literal> - error_log нужен для обозначения абсолютного
|
||
или относительного пути к файлу, в который протоколируются ошибки PHP. Этот файл должен доступным для записи веб-сервером.
|
||
Самые распространённые места размещения этого файла - различные временные TEMP директории, например, "C:\inetpub\temp\php-errors.log".
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>cgi.force_redirect</varname> = <literal>0</literal> - Эта директива необходима для исполнения под IIS.
|
||
Это механизм защиты директории, требуемый многими другими веб-серверами. Однако, включение его под IIS
|
||
вызовет ошибки ядра PHP в Windows.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>cgi.fix_pathinfo</varname> = <literal>1</literal> - Обеспечивает поддержку PATH_INFO согласно спецификации CGI.
|
||
IIS FastCGI использует эту настройку.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>fastcgi.impersonate</varname> = <literal>1</literal> - FastCGI под IIS поддерживает способность идентифицировать
|
||
маркеры безопасности вызывающего клиента. Это позволяет IIS определять контекст безопасности, под которые выполняется запрос.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>fastcgi.logging</varname> = <literal>0</literal> - Запись логов FastCGI должна быть выключена в IIS. Если запись включена,
|
||
тогда все сообщения любых классов распознаются FastCGI как ошибки, что приведёт IIS к выбрасыванию исключения HTTP 500.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
<para>
|
||
Опциональные директивы
|
||
<itemizedlist spacing="compact">
|
||
<listitem>
|
||
<para>
|
||
<varname>max_execution_time</varname> = <literal>##</literal> - Эта директива указывает максимальное время выполнения любого скрипта PHP.
|
||
По умолчанию равна 30 секундам. Следует увеличить это значение, если приложение PHP должно выполняться дольше.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>memory_limit</varname> = <literal>###M</literal> - Количество памяти, доступное процессу PHP, в Мб.
|
||
По умолчанию 128, что достаточно для большинства PHP приложений. Некоторым сложным приложениям может потребоваться больше памяти.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>display_errors</varname> = <literal>Off</literal> - Директива определяет, какие ошибки следует возвращать веб-серверу для
|
||
дальнейшего протоколирования. При значении "On" PHP сообщает обо всех видах ошибок, которые
|
||
приводятся в директиве <varname>error_reporting</varname>.
|
||
По соображениям безопасности рекомендуется установить в "Off" на рабочих серверах, чтобы исключить передачу
|
||
вывода ошибок конечному пользователю, так как они могут содержат информацию, угрожающую безопасности приложения.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>open_basedir</varname> = <literal><пути к директориям, разделённые точкой с запятой></literal>, например
|
||
openbasedir="C:\inetpub\wwwroot;C:\inetpub\temp". Эта директива указывает пути к директориям, в которых PHP
|
||
разрешены операции с файловой системой. Любая операция с файлами и директориями вне указанных путей будет приводить к ошибке.
|
||
Эта директива особенно полезна для предотвращения доступа к установленному PHP в окружениях разделяемых хостингов для предотвращения
|
||
доступа PHP-скриптов к любым файлам вне корневой директории веб сайта.
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
<varname>upload_max_filesize</varname> = <literal>###M</literal> и <varname>post_max_size</varname> = <literal>###M</literal> -
|
||
Максимальный разрешённый размер загруженного файла и присланных данных соответственно. Значения этих директив должны быть
|
||
увеличены, если приложения PHP должны обрабатывать большие загружаемые файлы, например, изображения или видеофайлы.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
</para>
|
||
<para>
|
||
После установки PHP в вашей системе, следующим шагом будет выбор веб-сервера и его дальнейшая
|
||
настройка для работы с PHP. Выберите конкретный веб-сервер в оглавлении к данному материалу.
|
||
</para>
|
||
<para>
|
||
Помимо запуска PHP с помощью веб-сервера, PHP может быть запущен из командной строки
|
||
как <literal>.BAT</literal> скрипт. За более подробной информацией обращайтесь к материалу
|
||
<link linkend="install.windows.legacy.commandline">Консоль PHP на Microsoft Windows</link>.
|
||
</para>
|
||
</sect3>
|
||
</sect2>
|
||
|
||
<!-- 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
|
||
-->
|