Встановлення на Unix системи
Зміст
Цей розділ описує основне налаштування та встановлення PHP на Unix системи.
Варто прочитати всі розділи, призначені для певних платформ чи вебсервера,
перш ніж почати процес.
Як зазначено в розділі Загальні інструкції
встановлення, ми головним чином працюватимемо над встановленням PHP,
що призначається для веб-програмування, хоча згадаємо також і про
налаштування PHP для використання в командному рядку.
Є кілька способів встановлення PHP на Unix платформі - або в процесі збірки
та конфігурування, або за допомогою готових дистрибутивів. Ця документація в
основному сфокусована на процесі збірки та конфігурування PHP. Багато
Unix-подібних систем мають певні програми встановлення пакетів. Вони можуть
допомогти з налаштуванням стандартної конфігурації, але якщо потрібен інший
набір функцій (такий як безпековий сервер, або різні драйвера до баз даних),
то може знадобитись компіляція PHP та/або веб-сервера. Якщо ви не знайомі з
побудовою та компіляцією вашого програмного забезпечення, варто перевірити
чи немає вже готових пакетів, що мають версію PHP з потрібною
функціональністю.
Необхідні знання та програмне забезпечення для компіляції:
-
Базові знання Unix (вміння оперувати "make" та компілятором C)
-
Компілятор ANSI C
-
Веб-сервер
-
Будь-які специфічні компоненти модулів (такі як бібліотеки
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) можуть не
дозволяти перезаписувати сторінки пам'яті, що були виділені для інструкцій
процесору та навпаки. Цей захист пам'яті називається MPROTECT або W^X.
Однак ці обмеження неприпустимі для JIT PCRE, тож PHP має бути побудований
без підтримки PCRE, або двійковий
файл повинен бути внесений у білий список будь-якими способами,
передбаченими системою.
Зауваження:
Перехресне компілювання для ARM за допомогою набору інструментів Android
наразі не підтримується.