Установка на Unix-системы
Содержание
Этот раздел описывает установку и настройку PHP на Unix-системах.
Перед установкой, пожалуйста, прочитайте все разделы, которые касаются вашей платформы
или веб-сервера.
Как рассказывает раздел «Общие указания по
установке», этот раздел в основном описывает
установку PHP, которая ориентирована на веб, однако раздел также затрагивает
установку PHP для командной строки.
PHP устанавливают на Unix-платформы несколькими способами.
Один способ — конфигурирование и компиляция исходных кодов, другой —
установка из пакетов. Этот документ сфокусирован на установке из
исходных кодов. Много Unix-подобных систем имеют различные системы установки программ из пакетов.
Они могут помочь при установке стандартных конфигураций, но если требуются другие варианты
(например, безопасный сервер или другой драйвер базы данных), может
потребоваться компиляция PHP и (или) веб-сервера.
Если вы незнакомы с компилированием своего программного обеспечения,
возможно, лучше поискать готовый пакет PHP с необходимыми возможностями,
который собрал кто-то другой.
Для компиляции PHP из исходных кодов потребуется следующее:
-
Базовые знания Unix (умение обращаться с командой make и компилятором языка C)
-
Компилятор ANSI языка C
-
Веб-сервер
-
Любые компоненты, специфичные для отдельных модулей PHP (например, библиотеки GD,
PDF и т. д.)
При сборке непосредственно из исходного кода Git или после ручных
изменений может также потребоваться:
-
autoconf:
-
PHP 7.3 и выше: 2.68+
-
PHP 7.2: 2.64+
-
PHP 7.1 ниже: 2.59+
-
automake: 1.4+
-
libtool: 1.4.x+ (кроме версии 1.4.2)
-
re2c:
-
PHP 8.3 и выше: 1.0.3+
-
PHP 8.2 и ниже: 0.13.4+
-
bison:
-
PHP 7.4 и выше: 3.0.0+
-
PHP 7.3 и ниже: 2.4+ (включая генератор парсеров Bison 3.x)
Общая (или начальная) конфигурация PHP задаётся параметрами скрипта
configure. Можно просмотреть список допустимых
параметров вместе с их кратким описанием через команду
./configure --help.
Это руководство документирует разные опции отдельно, список основных параметров
перечисляет приложение «Основные параметры конфигурации»,
тогда как параметры отдельных модулей описывают страницы документации,
которые посвящены этим модулям.
Когда PHP сконфигурирован, всё готово к сборке модулей и (или)
исполняемых файлов. Об этом должна позаботиться команда
make. Если что-то не получилось и непонятно, почему,
смотрите раздел «Проблемы установки».
Замечание:
Отдельные Unix-системы (например, OpenBSD и SELinux) могут из соображений безопасности
запрещать сопоставление доступных для записи и исполнения страниц.
Это называется PaX MPROTECT или нарушение защиты W^X. Однако такое сопоставление
памяти необходимо для поддержки JIT-компиляции библиотекой PCRE, поэтому
необходимо собирать PHP без поддержки JIT-компиляции библиотекой PCRE,
либо бинарные файлы необходимо внести в белый список операционной системы.
Замечание:
Кросс-компиляция под архитектуру ARM через набор инструментов Android пока не поддерживается.