Хоча PHP можна зібрати з початкового коду, він також доступний у вигляді пакетів в » Debian GNU/Linux. Це діє і для інших дистрибутивів на основі Debian, як от Ubuntu, Kali Linux і Linux Mint.
Збірки від сторонніх розробників вважаються неофіційними і безпосередньо проектом PHP не підтримуються. Про знайдені вади, якщо вони не можуть бути відтворені на » офіційних збірках, необхідно повідомляти постачальників цих неофіційних збірок.
Пакунки можна встановити командою apt
або
aptitude
. Ці дві команди вважаються рівнозначними.
По-перше, варто зауважити, що інші пов'язані пакети можуть потребувати
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
. Необхідно перезапустити вебсервер, щоб
зміни набули чинності.