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

PHP 8.0 — это последняя основная версия языка PHP. Он представляет несколько критических изменений, улучшения производительности и множество новых функций , таких как именованные аргументы, компилятор JIT, типы объединения, выражение соответствия и многое другое.

В этой статье вы узнаете, как установить PHP 8 на Ubuntu 20.04 и интегрировать его с Nginx и Apache.

Включение репозитория

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

После включения PPA вы можете установить PHP 8.

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

Если вы используете Apache в качестве веб-сервера, вы можете запустить PHP как модуль Apache или PHP-FPM.

Установите PHP как модуль Apache

Установка PHP в качестве модуля Apache — простая задача:

sudo apt update
sudo apt install php8.0 libapache2-mod-php8.0

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

sudo systemctl restart apache2

Настройте Apache с помощью PHP-FPM

Php-FPM — это менеджер процессов FastCGI для PHP. Выполните следующую команду, чтобы установить необходимые пакеты:

sudo apt update
sudo apt install php8.0-fpm libapache2-mod-fcgid

По умолчанию PHP-FPM не включен в Apache. Чтобы включить его, запустите:

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm

Чтобы активировать изменения, перезапустите Apache:

systemctl restart apache2

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

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

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

sudo apt update
sudo apt install php8.0-fpm

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

systemctl status php8.0-fpm

Теперь вы можете отредактировать блок сервера Nginx и добавить следующие строки, чтобы Nginx мог обрабатывать файлы PHP:

server {

    # . . . other code

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.0-fpm.sock;
    }
}

Не забудьте перезапустить службу Nginx , чтобы новая конфигурация вступила в силу:

sudo systemctl restart nginx

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

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

sudo apt install php8.0-[extname]

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

sudo apt install php8.0-mysql php8.0-gd

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