PHP — один из наиболее часто используемых серверных языков программирования. Многие популярные CMS и фреймворки, такие как WordPress, Magento и Laravel, написаны на PHP.

В этом руководстве описаны шаги, необходимые для установки PHP в Ubuntu 20.04 и его интеграции с Nginx и Apache.

Установка PHP 7.4 с Apache

Если вы используете Apache в качестве веб-сервера, выполните следующие команды, чтобы установить PHP и модуль Apache PHP:

sudo apt update
sudo apt install php libapache2-mod-php

После установки пакетов перезапустите Apache , чтобы модуль PHP загрузился:

sudo systemctl restart apache2

Установка PHP 7.4 с Nginx

В отличие от Apache, Nginx не имеет встроенной поддержки обработки файлов PHP. Мы будем использовать PHP-FPM («менеджер процессов fastCGI») для обработки файлов PHP.

Выполните следующие команды, чтобы установить пакеты PHP и PHP FPM:

sudo apt update
sudo apt install php-fpm

После завершения установки служба FPM запустится автоматически. Чтобы проверить статус службы, запустите

systemctl status php7.4-fpm

Установка расширений PHP

Расширения PHP — это скомпилированные библиотеки, которые расширяют основные функции PHP. Расширения доступны в виде пакетов и могут быть легко установлены с помощью apt :

sudo apt install php-[extname]

Например, чтобы установить расширения MySQL и GD, вы должны выполнить следующую команду:

sudo apt install php-mysql php-gd

После установки нового расширения PHP, в зависимости от ваших настроек, не забудьте перезапустить службу Apache или PHP FPM.

Установка предыдущих версий PHP

Ондржей Сури, разработчик Debian, поддерживает репозиторий, включающий несколько версий PHP. Чтобы включить репозиторий , запустите:

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Теперь вы можете установить любую версию PHP, которая вам нужна, добавив номер версии к имени пакета:

sudo apt install php[version]

Например, чтобы установить PHP 7.1 и несколько распространенных модулей PHP, вы должны запустить:

sudo apt install php7.1 php7.1-common php7.1-opcache php7.1-mcrypt php7.1-cli php7.1-gd php7.1-curl php7.1-mysql