Примітки щодо встановлення в Debian GNU/Linux
Хоча PHP можна зібрати з початкового коду, він також доступний у вигляді
пакетів в » Debian GNU/Linux. Це діє і
для інших дистрибутивів на основі Debian, як от Ubuntu, Kali Linux і Linux
Mint.
Увага
Збірки від сторонніх розробників вважаються неофіційними і безпосередньо
проектом PHP не підтримуються. Про знайдені вади, якщо вони не можуть бути
відтворені на » офіційних збірках,
необхідно повідомляти постачальників цих неофіційних збірок.
Пакунки можна встановити командою apt
або
aptitude
. Ці дві команди вважаються рівнозначними.
Використання APT
По-перше, варто зауважити, що інші пов'язані пакети можуть потребувати
libapache2-mod-php
для інтеграції з Apache 2 та
php-pear
для PEAR.
По-друге, перед встановленням пакетів список пакетів має бути оновлено.
Типово, це робиться через запуск команди apt update.
Приклад #1 Приклад встановлення з Apache 2 в Debian
# apt install php-common libapache2-mod-php php-cli
APT автоматично встановить модуль PHP для Apache 2 та всі його залежності, а
потім активує його. Apache потрібно перезапустити, щоб зміни набули
чинності. Наприклад:
Приклад #2 Зупинка та запуск Apache після встановлення PHP
# /etc/init.d/apache2 stop
# /etc/init.d/apache2 start
Розширене налаштування
В останньому прикладі PHP було встановлено з основними модулями. Ймовірно,
потрібно буде додати інші модулі, наприклад,
MySQL,
cURL, GD
та інші. Їх також можна встановити через команду apt.
Приклад #3 Методи пошуку додаткових пакетів для PHP
# apt-cache search php
# apt search php | grep -i mysql
# aptitude search php
Список складатиметься з великої кількості пакунків, що містять основні
компоненти PHP, як от php-cgi
, php-cli
та php-dev
, а також багато інших розширень PHP. Під час
встановлення розширень будуть автоматично встановлені додаткові пакунки,
необхідні для задоволення залежностей цих розширень.
Приклад #4 Встановлення PHP з MySQL та cURL
# apt install php-mysql php-curl
APT буде автоматично додає відповідні рядки для різних пов'язаних php.ini
файлів, як от /etc/php/7.4/php.ini,
/etc/php/7.4/conf.d/*.ini і схожих, та залежно від
розширень, буде додавати записи, наприклад
extension=foo.so
. Необхідно перезапустити вебсервер, щоб
зміни набули чинності.
Загальні проблеми
-
Якщо скрипти PHP не обробляються вебсервером, то ймовірно, що PHP ще не
додано до конфігураційного файлу вебсервера, який на Debian може
знаходитись тут: /etc/apache2/apache2.conf. Докладніша
інформація є у керівництві Debian.
-
Якщо розширення встановлено, але функції не доступні, треба переконатись,
що завантажується відповідний ini-файл та вебсервер було перезапущено
після встановлення цих розширень.