Установка из пакетов в ОС Debian GNU/Linux и родственных дистрибутивах
Хотя PHP доступен для установки из исходного кода, язык также доступен
для установки из пакетов с сайта » Debian GNU/Linux.
Это также справедливо для других дистрибутивов на основе Debian
наподобие Ubuntu, Kali Linux и Linux Mint.
Внимание
Проект PHP считает сторонние сборки неофициальными
и не поддерживает сборки, которые скомпилировали третьи лица. Об ошибках, которые обнаруживают
в таких сборках, сообщают поставщику этих неофициальных сборок, если только ошибки не воспроизводятся
в сборках » с официальной страницы
загрузки.
Пакеты устанавливают командой apt
или командой aptitude. Эта страница руководства
взаимозаменяет обе команды.
Команда APT
Во-первых, обратите внимание, что иногда требуются и другие связанные пакеты:
libapache-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, и много других модулей.
После установки модулей автоматически установятся дополнительные пакеты,
которые удовлетворят зависимости пакетов модулей.
Пример #4 Установка PHP с MySQL и cURL
# apt install php-mysql php-curl
APT автоматически добавит строки в файлы вроде
/etc/php/7.4/php.ini,
/etc/php/7.4/conf.d/*.ini и другие, которые связаны и соответствуют файлу php.ini,
и в зависимости от модуля добавит записи наподобие
extension=foo.so
.
Потребуется перезапустить веб-сервер вроде того же Apache, чтобы изменения вступили в силу
Стандартные проблемы
-
Веб-сервер не обрабатывает PHP-скрипты. Самая частая причина состоит в том,
что PHP не добавили в файл конфигурации веб-сервера. В ОС Debian файл конфигурации
часто лежит по пути /etc/apache2/apache2.conf или аналогичном.
Подробнее рассказывает руководство по ОС Debian.
-
PHP не находит функции модуля. Причина часто состоит в том,
что не загрузили INI-файл и (или) после установки модуля
не перезапустили веб-сервер.