Как установить PHP 8 на Ubuntu 20.04 LTS

12 set 2022 3 min di lettura
Как установить PHP 8 на Ubuntu 20.04 LTS
Indice dei contenuti

Введение

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

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

Эта статья покажет вам, как установить PHP 8 на Ubuntu 20.04 LTS и интегрировать его с Nginx и Apache.

На момент написания этого руководства репозитории Ubuntu 20.04 LTS по умолчанию включали версию PHP 7.4. Мы будем устанавливать PHP из ondrej/php PPA.

Перед обновлением или установкой PHP 8 убедитесь, что ваши приложения поддерживают его.

Если вы хотите установить PHP 8 на удаленный сервер, продолжайте читать, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.

Подключение к серверу

Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:

ssh root@IP_DEL_SERVER

Далее вам нужно будет ввести пароль пользователя root.

Если вы не используете пользователя root, вы можете войти в систему с другим именем пользователя, используя ту же команду, а затем изменить root на свое имя пользователя:

ssh nome_utente@IP_DEL_SERVER

Затем вам будет предложено ввести пароль пользователя.

Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Включить репозиторий PHP

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

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

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

Установите PHP 8 с Apache

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

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

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

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

После установки пакетов перезапустите 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 с 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
● php8.0-fpm.service - The PHP 8.0 FastCGI Process Manager
 Loaded: loaded (/lib/systemd/system/php8.0-fpm.service; enabled; vendor preset: enabled)
 Active: active (running) since Fri 2020-12-04 20:31:32 CET; 3h 23min ago
 Docs: man:php-fpm8.0(8)
 Process: 150630 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.0/fpm/pool.d/www.conf 80 (code=exited, status=0/SUCCESS)
 Main PID: 150615 (php-fpm8.0)
 Status: "Processes active: 0, idle: 2, Requests: 1, slow: 0, Traffic: 0req/sec"
 Tasks: 3 (limit: 2286)
 Memory: 7.9M
 CGroup: /system.slice/php8.0-fpm.service

Теперь вы можете отредактировать блок сервера 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, в зависимости от вашей конфигурации.

Проверка обработки PHP

Чтобы проверить, правильно ли настроен веб-сервер для обработки PHP, создайте новый файл с именем info.php внутри каталога /var/www/html со следующим кодом:

<?php

 phpinfo();
/var/www/html/info.php

Сохраните файл, откройте браузер и перейдите на сайт: http://dominio_oppure_ip/info.php.

Вы увидите информацию о вашей конфигурации PHP, включая установленную версию.

Вывод

Установка PHP 8 на сервер Ubuntu 20.04 LTS — простая операция. Все, что вам нужно сделать, это включить репозиторий ondrej/php и установить PHP 8 с помощью apt.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.