PHP, что означает «Hypertext Preprocessor», — это серверный язык сценариев, широко используемый для веб-разработки. PHP часто используется для создания динамических веб-страниц, обработки форм, взаимодействия с базами данных и выполнения различных задач на стороне сервера.

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

В этом уроке мы покажем вам, как установить PHP 8.3 на ОС Ubuntu 22.04.

Обновить операционную систему

Обновите свой Ubuntu 22.04 операционная система, чтобы убедиться, что все существующие пакеты обновлены:

# apt update && apt upgrade

Добавить PHP-репозиторий

По умолчанию, PHP 8.3 не включен в репозиторий Ubuntu 22.04 по умолчанию. Поэтому вам нужно будет добавить DEB.SURY.ORG в вашу систему.

Сначала установите необходимые пакеты с помощью следующей команды:

# apt-get install ca-certificates apt-transport-https software-properties-common

После установки всех пакетов добавьте этот PPA с помощью следующей команды:

# add-apt-repository ppa:ondrej/php

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

# apt-get update

Установить PHP 8.3

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

# apt-get install php8.3

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

# php8.3 --version

Результат:

# PHP 8.3.0 (cli) (built: Nov 24 2023 08:50:08) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.0, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.0, Copyright (c), by Zend Technologies

Установить PHP 8.3 для Apache

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

# apt install libapache2-mod-php8.3

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

# systemctl restart apache2

Установить PHP 8.3 FPM для Nginx

Для веб-сервера Nginx необходимо установить службу FPM, установить ее можно с помощью следующей команды:

# apt install php8.3-fpm

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

# systemctl status php8.3-fpm

Результат:

● php8.3-fpm.service - The PHP 8.3 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php8.3-fpm.service; enabled; vendor preset: enabled)
     Active: active (running)
       Docs: man:php-fpm8.3(8)
    Process: 58796 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.3/fpm/pool.d/www.conf 83 (code=exited, status=0>
   Main PID: 58793 (php-fpm8.3)
     Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
      Tasks: 3 (limit: 2178)
     Memory: 7.5M
        CPU: 34ms
     CGroup: /system.slice/php8.3-fpm.service
             ├─58793 "php-fpm: master process (/etc/php/8.3/fpm/php-fpm.conf)
├─58794 php-fpm: pool www
└─58795 php-fpm: pool www

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

Установка расширений PHP проста благодаря следующему синтаксису:

# sudo apt install php8.3-[extension]

Заменять [extension] с расширением, которое вы хотите установить; если вы хотите добавить несколько расширений, то заключите их в фигурные скобки:

# apt install php8.3-mysql php8.3-imap php8.3-ldap php8.3-xml php8.3-curl php8.3-mbstring php8.3-zip

Для проверки загруженных модулей PHP используйте команду:

# php8.3 -m

Пример вывода:

[PHP Modules]
..............
fileinfo
filter
ftp
gettext
hash
iconv
imap
json
ldap
libxml
mbstring
mysqli
mysqlnd
..............

[Zend Modules]
Zend OPcache

Запуск PHP 8.3 с другими версиями

Вместо удаления старых версий PHP можно также запустить несколько версий PHP одновременно.

Команда обеспечивает простой способ переключения между версиями PHP для PHP CLI.

# update-alternatives --config php

Это вызовет приглашение интерактивно выбрать альтернативный путь к бинарному файлу PHP, который php указывает на.

There are 2 choices for the alternative php (providing /usr/bin/php).

  Selection    Path             Priority   Status
------------------------------------------------------------
* 0            /usr/bin/php8.3   81        auto mode
  1            /usr/bin/php8.1   81        manual mode
  2            /usr/bin/php8.3   83        manual mode

Чтобы задать путь без интерактивной подсказки:

# update-alternatives --set php /usr/bin/php8.1