Как установить PHP на Ubuntu 22.04

PHP, сокращение от PHP hypertext preprocessor, является одним из серверных языков программирования. Он широко используется в веб-разработке для поддержки и запуска PHP-приложений на веб-сервере. Впервые он появился в 1995 году, но в настоящее время поддерживается компанией Zend technologies. Многие системы управления контентом (CMS), такие как WordPress и Lavaravel, написаны на PHP.

В этой статье мы покажем, как установить PHP на Ubuntu 22.04 и совместить его с Apache и Nginx.

Требование к установке

Чтобы начать работу, вот что вам нужно:

  • Экземпляр Ubuntu 22.04 с доступом по SSH.
  • Пользователь sudo, настроенный для выполнения задач пользователя root.

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

На момент написания этого руководства версия PHP, которая в настоящее время размещена или предоставляется репозиториями Ubuntu — PHP 8.1.

Чтобы установить PHP с помощью менеджера пакетов APT из репозитория Ubuntu по умолчанию, введите:

sudo apt install php

А для того чтобы воспользоваться преимуществами последних версий PHP. Требуется включить PPA-репозиторий Ondrej, который предоставляет последние версии PHP. Это PPA, который поддерживается Ondrej Sury, разработчиком Debian, который упаковывает PHP, начиная с PHP 5.

Чтобы выполнить это, для начала установите предварительные условия

sudo apt install software-properties-common -y

Далее включите Ondrej PPA, делается это с помощью следующей команды.

sudo add-apt-repository ppa:ondrej/php

Затем обновите индекс локальных пакетов, чтобы начать использовать только что добавленный репозиторий PHP.

sudo apt update

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

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

Чтобы установить PHP 8.0 на Ubuntu как модуль Apache, выполните следующие команды:

sudo apt update

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

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

sudo systemctl restart apache

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

php -v

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

PHP 8.1 — это последняя версия PHP на данный момент. Так как она поставляется по умолчанию в репозитории, вы просто устанавливаете PHP и PHP-модуль Apache следующим образом:

sudo apt update

sudo apt install php libapache2-mod-php

Теперь снова перезапустите Apache, чтобы перезагрузить модуль PHP. Сделать это можно командой:

sudo systemctl restart apache

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

php -v

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

PHP-FPM (FastCGI Process Manager) — это инструмент для ускорения работы веб-сервера и является лучшей альтернативой PHP.

По умолчанию PHP-FPM не включен в Apache, и нам требуется сделать еще один шаг чтобы включить его. Но сначала выполните следующие команды.

sudo apt update

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

Чтобы включить PHP-FPM, выполните:

sudo a2enmod proxy_fcgi setenvif

sudo a2enconf php8.0-fpm

Чтобы изменения вступили в силу, перезапустите веб-сервер Apache.

systemctl restart apache2

Установка PHP 8.0 с помощью Nginx

Веб-сервер Nginx по умолчанию не имеет встроенной поддержки для обработки файлов PHP. Поэтому для обработки php-файлов будет использоваться PHP-FPM.

Чтобы это стало возможным, выполните следующие команды для установки PHP и PHP-FPM

sudo apt update

sudo apt install php8.0-fpm

После установки PHP-FPM должен запуститься автоматически без какого-либо вмешательства. Чтобы убедиться, что PHP-FPM запущен, выполните следующую команду.

sudo systemctl status php8.0-fpm

Статус active (Активный) будет означать, что служба запущена и работает.

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

Аналогичным образом вы можете установить PHP 8.1 с FPM для Nginx на Ubuntu следующим образом:

sudo apt update

sudo apt install php-fpm

После установки подтвердите статус службы php fpm с помощью следующей команды.

sudo systemctl status php8.1-fpm

Настройка Nginx с помощью PHP-FPM

Nginx не имеет возможности обрабатывать php-скрипты и приложения. Поэтому требуется настроить Nginx для работы с PHP-FPM.

В блоке вашего сервера Nginx добавьте следующие строки, чтобы позволить Nginx обрабатывать php-файлы.

server { # . . . остальная часть кода location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.0-fpm.sock; }
}

Чтобы применить изменения, перезапустите Nginx.

sudo systemctl restart nginx

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

Для установки PHP 7.4 используйте PPA, упомянутый ранее. Затем вы можете установить эту версию с помощью менеджера пакетов APT.

sudo apt update

sudo apt install php7.4 libapache2-mod-php

Это установит php вместе с дополнительными модулями php.

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

Если вы используете Nginx, PHP-FPM необходим для обработки файлов php. Поэтому установите PHP-FPM на Ubuntu с помощью следующей команды.

sudo apt update

sudo apt install php7.4-fpm

После установки PHP-FPM следующим шагом будет настройка Nginx для работы с PHP-FPM.

В конфигурации вашего виртуального хоста добавьте следующий код

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

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

sudo systemctl restart nginx

Как установить расширения PHP

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

sudo apt install php-[имя расширения].

Например, чтобы установить расширения php-dg, php-zip, php-mbstring, php-opcache, php-pear и php-mysqli, выполните команду:

sudo apt install php-{gd,zip,mbstring,opcache,pear,mysqli}.

Не забудьте перезапустить веб-сервер Apache с PHP-FPM после установки расширений PHP.

Переключение между версиями PHP

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

Во-первых, вы можете посмотреть на несколько версий PHP, установленных в вашей системе. Для этого выполните следующую команду:

sudo update-alternatives --config php

Вот вывод, который вы получите.

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

Чтобы перейти с PHP 7.4 на PHP 8.1, выполните следующие команды:

sudo a2dismod php7.4

sudo a2enmod php8.1

Приведенные выше команды просто отключают PHP 7.4 и включают PHP 8.0 на ubuntu. Вы можете перейти с одной версии на другую, просто поменяв местами версии. Чтобы применить сделанные изменения, перезапустите веб-сервер Apache.

sudo systemctl apache2 restart

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

Чтобы проверить версию PHP, установленную по умолчанию, выполните команду

php -v

Вы должны получить результат, аналогичный приведенному здесь:

PHP 8.1.2 (cli) (built: Apr 7 2022 17:46:26) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.2, Copyright (c) Zend Technologies with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies.

Еще один способ проверить, работает ли PHP — это создать файл info.php в корне документа. Файл info.php — это файл, в котором содержится информация об установленной по умолчанию версии PHP и другие сведения о модулях php.

Итак, создайте файл в каталоге /var/www/html следующим образом.

sudo vim /var/www/html/info.php

Затем добавьте следующий код

<?php
phpinfo();
?>

Сохраните файл. Теперь откройте браузер и перейдите по URL

http://server-ip/info.php

phpinfo тестовая страница
phpinfo тестовая страница

Оба этих способа показывают, что PHP установлен.

Заключение

В этом руководстве мы показали различные варианты как установить PHP и как выполнить установку необходимых модулей PHP на Ubuntu 22.04. PHP 8.1 — это версия по умолчанию, предоставляемая официальными репозиториями Ubuntu. Чтобы установить последние версии PHP, вам необходимо включить Ondrej PPA в вашей системе Linux.

Nazario

Я — Nazario, создатель и автор сайта linuxwin.ru, специализируюсь на информационных технологиях с акцентом на системное администрирование Linux и Windows, веб-разработку и настройку различных систем.

Linux и Windows
Выскажите своё мнение или присоединяйтесь к обсуждению:

Отправляя комментарий, вы даете согласие на обработку ваших данных в соответствии с политикой конфиденциальности и даёте согласие на их использование.

  1. F

    не правильно указана установка php7.4-fpm на ubuntu 22.04

    Ответить