Как установить и настроить PHP 8.0 на Ubuntu 20.04

PHP — это очень популярный серверный язык программирования, используется для создания динамических веб-сайтов и приложений.  PHP8.0 бесплатен и поставляется с открытым исходным кодом. PHP 8 привносит в язык множество оптимизаций и мощных функций, включая компилятор Just-in-time (JIT), атрибуты, именованные аргументы и многое другое .

Из этой статьи вы узнаете, как установить PHP 8.0 на Ubuntu 20.04 и настроить его для работы с веб-серверами Apache и NGINX.

Требования

  • Веб-сервер NGINX или Apache, работающий на Ubuntu 20.04
  • Пользователь с привилегиями sudo

Добавьте репозиторий ondre/php

На момент написания этой статьи PHP 7.4 является последней версией, доступной в репозитории пакетов Ubuntu по умолчанию.

Чтобы установить PHP 8, вам нужно добавить репозиторий ondre/php. В этом частном архиве пакетов доступно несколько версий PHP и расширений.

Выполните следующую команду, чтобы добавить репозиторий ondre/php в Ubuntu 20.04.

$ sudo add-apt-repository ppa:ondrej/php

Затем выполните приведенную ниже команду, чтобы проверить наличие обновлений пакета.

$ sudo apt update

Установка PHP 8 для Apache

После добавления репозитория ondre/php и проверки наличия обновлений пакетов, вы можете запустить следующую команду для установки PHP 8 на Ubuntu 20.04.

$ sudo apt install php8.0

При появлении запроса введите y, чтобы продолжить.

Установка PHP 8.0 для Apache
Установка PHP 8.0 для Apache

После успешного завершения установки вы можете проверить версию PHP с помощью следующей команды.

$ php -v

Проверка версии PHP
Проверка версии PHP

Тест PHP 8 на Apache в Ubuntu

Чтобы убедиться, что PHP правильно работает с Apache, создайте index.php файл в корне документа по умолчанию следующим образом.

$ sudo nano var/www/html/index.php

Скопируйте и вставьте приведенный ниже пример PHP — кода в текстовый редактор.

<?php
phpinfo();
?>

Теперь откройте веб-браузер и перейдите на страницу serverIP/index.php… Замените serverIP на ваш фактическим IP-адресом сервера. Если вы видите информационную страницу PHP 8.0.3, то все в порядке.

Страница PHP версии 8.0.3 на Apache
Страница PHP версии 8.0.3 на Apache

Установка PHP 8 для NGINX сервера Ubuntu

В отличие от Apache, NGINX не имеет встроенных возможностей для обработки PHP-документов. Чтобы обойти эту проблему, вам нужно установить PHP-FPM (то есть PHP FastCGI Process Manager) и настроить его для работы с NGINX.

Первое что требуется это убедится в том, что вы добавили репозиторий ondre/php.

$ sudo add-apt-repository ppa:ondrej/php

Кроме того, проверьте наличие обновлений пакета с помощью команды:

$ sudo apt update

Чтобы установить PHP-FPM 8.0 на Ubuntu 20.04, выполните приведенную ниже команду.

$ sudo apt install php8.0-fpm

Теперь проверьте версию PHP с помощью команды:

$ php -v

Затем откройте файл блока сервера NGINX по умолчанию, делается это следующим образом.

$ sudo nano /etc/nginx/sites-available/default

Прокрутите вниз, пока не дойдете до строки, начинающейся с index, а затем добавьте index.php к списку, как показано на рисунке ниже.

Добавить index.php директива to NGINX index
Добавить index.php директива to NGINX index

Прокрутите страницу вниз еще дальше, пока не увидите раздел # pass PHP scripts to FastCGI server. Измените эту часть конфигурационного файла так, чтобы она выглядела так, как вы видите в приведенном ниже блоке кода.

# pass PHP scripts to FastCGI server
#
location ~ .php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}

Обратите внимание, что определенные строки были раскомментированы, а php7.4-fpm.sock был заменен на php8.0-fpm.sock.

Сохраните внесенные изменения и закройте файл блокировки сервера.

Тест PHP 8 на NGINX

Чтобы убедиться, что после установки PHP 8, он правильно работает с NGINX. Создайте index.php файл в корне документа по умолчанию.

$ sudo nano var/www/html/index.php

Скопируйте и вставьте приведенный ниже пример PHP — кода в текстовый редактор.

<?php
phpinfo();
?>

Сохраните и закройте index.php файл.

И последнее, откройте веб-браузер и перейдите к server IP/index.php… Заменив serverIP на ваш фактический IP-адрес сервера.

Если вы видите страницу PHP версии 8.0.3 info, то вы все сделали правильно.

PHP Версия 8.0.3 страница на NGINX
PHP Версия 8.0.3 страница на NGINX

Заключение

В этой статье мы описали шаги по установке и настройке PHP 8 на веб-серверах Apache и NGINX. Если у вас есть какие-либо вопросы пожалуйста оставьте комментарии.

Добавить комментарий