Как проверить версию PHP в Ubuntu

Как проверить версию php ubuntu

Как проверить версию php ubuntu

В системах на базе Ubuntu часто требуется узнать точную версию PHP для настройки веб-серверов, установки расширений или проверки совместимости приложений. Без этого шага легко столкнуться с ошибками при работе фреймворков или CMS, которые требуют определённого набора функций языка.

Определить версию PHP можно несколькими способами: через терминал с помощью встроенной команды, проверкой конфигурации Apache или Nginx, а также просмотром информации в phpinfo. Каждый метод подходит для разных задач: терминал удобен администраторам, phpinfo полезен при отладке веб-окружения, а проверка через пакеты системы помогает убедиться в корректности установки.

В Ubuntu версии PHP могут сосуществовать параллельно. Поэтому важно не только узнать номер установленного пакета, но и уточнить, какая именно версия активна в текущей сессии или используется веб-сервером. Это позволит избежать конфликтов и правильно настроить окружение.

Проверка версии PHP через команду php -v

PHP 8.2.5 (cli) (built: May 14 2025 12:30:45) ( NTS )

Если команда возвращает ошибку «php: command not found», PHP не установлен или путь к бинарнику не добавлен в переменную окружения PATH. Проверку можно уточнить через which php для определения точного пути.

Для систем с несколькими версиями PHP используйте update-alternatives --display php, чтобы узнать активную версию CLI. Команда php -v покажет именно ту версию, которая вызывается по умолчанию.

Определение версии PHP для конкретного пакета apt

Определение версии PHP для конкретного пакета apt

Для проверки версии PHP, установленной через пакетный менеджер apt, используйте команду apt show с указанием точного имени пакета. Например, для пакета php8.1-cli выполните:

apt show php8.1-cli

Version: 8.1.19-1ubuntu1

Если необходимо узнать версию уже установленного пакета, можно дополнительно использовать dpkg -l:

dpkg -l | grep php8.1-cli

Для проверки всех установленных пакетов PHP удобно выполнить:

dpkg -l | grep php

Это позволит видеть версии CLI, модуля Apache и других компонентов одновременно. Для автоматизации или скриптов рекомендуется извлекать версию через команду:

apt show php8.1-cli | grep Version | awk '{print $2}'

Таким образом, можно точно определить, какая версия PHP используется конкретным пакетом, без необходимости запускать интерпретатор.

В Ubuntu для управления несколькими версиями PHP используется система альтернатив `update-alternatives`. Для проверки активной версии PHP выполните команду:

sudo update-alternatives --display php

Она покажет путь к исполняемому файлу PHP, приоритеты каждой установленной версии и текущий выбор по умолчанию.

/usr/bin/php7.4 -v

Для переключения между установленными версиями используется:

sudo update-alternatives --config php

После выбора версии команда `php -v` отобразит актуальную версию PHP для всей системы.

Аналогично можно проверить версии CLI-расширений PHP, заменив `php` на `phpize` или `php-config` в командах `update-alternatives`. Это важно при работе с компиляцией модулей и настройкой среды разработки.

Проверка версии PHP, установленной в Apache

Проверка версии PHP, установленной в Apache

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

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

Вставьте в файл следующий код:

<?php
phpinfo();
?>

Сохраните изменения и закройте редактор. Затем откройте браузер и перейдите по адресу:

http://localhost/info.php

На странице отобразится полная информация о PHP, включая:

  • Версию PHP (например, 8.2.1)
  • Используемые модули
  • Настройки конфигурации и пути к php.ini

После проверки рекомендуется удалить файл info.php, чтобы исключить потенциальные риски безопасности:

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

Альтернативно можно использовать команду в терминале для проверки версии PHP, загружаемой Apache:

apache2ctl -M | grep php

Если модуль PHP активен, команда вернёт строку типа php_module (shared), что подтверждает интеграцию Apache с PHP.

Проверка версии PHP, используемой в Nginx с PHP-FPM

Для точного определения версии PHP, работающей через Nginx с PHP-FPM, создайте в корне веб-сайта файл info.php со следующим содержимым:

<?php phpinfo(); ?>

После сохранения файла откройте его в браузере по адресу http://ваш_домен/info.php. В блоке «PHP Version» будет указана версия PHP, которую обрабатывает PHP-FPM для данного виртуального хоста.

Альтернативно можно проверить версию через терминал. Узнайте, какой сокет или порт использует PHP-FPM для Nginx, выполнив:

sudo grep -R "listen =" /etc/php/*/fpm/pool.d/

После этого используйте команду для проверки версии конкретного PHP-FPM:

php-fpmX.Y -v
где X.Y соответствует версии, указанной в пути конфигурации.

Для систем с несколькими версиями PHP важно убедиться, что Nginx подключен к нужной версии через параметр fastcgi_pass в блоке server конфигурации:

fastcgi_pass unix:/run/php/phpX.Y-fpm.sock;

После изменений конфигурации перезапустите сервисы:

sudo systemctl restart phpX.Y-fpm

sudo systemctl reload nginx

Повторное открытие info.php подтвердит актуальную версию PHP, используемую Nginx через PHP-FPM.

Создание phpinfo() файла для просмотра версии в браузере

Для отображения версии PHP через веб-браузер создайте файл с расширением .php в корневой директории веб-сервера, обычно это /var/www/html/.

Название файла может быть любым, например info.php. Откройте его в текстовом редакторе с правами суперпользователя и вставьте следующий код:

<?php phpinfo(); ?>

Сохраните изменения и убедитесь, что файл доступен для чтения веб-сервером (права 644, владелец www-data для Apache или nginx). Проверить права можно командой: ls -l /var/www/html/info.php.

Откройте браузер и перейдите по адресу http://localhost/info.php или http://IP_сервера/info.php. На странице отобразятся данные о версии PHP, активных модулях, настройках конфигурации и путях к расширениям.

После проверки рекомендуется удалить или переименовать файл, чтобы исключить утечку информации о сервере. Используйте команду: sudo rm /var/www/html/info.php для безопасного удаления.

Определение версии PHP с помощью dpkg -l

Для точного определения установленной версии PHP в Ubuntu используется команда dpkg -l, которая отображает список всех пакетов с установленными версиями.

Шаги для проверки версии PHP:

  1. Откройте терминал.
  2. Выполните команду для поиска пакета PHP:

dpkg -l | grep php

ii  php8.1-cli      8.1.12-1ubuntu2.3  amd64  command-line interpreter for PHP
ii  php8.1-fpm      8.1.12-1ubuntu2.3  amd64  server-side, FastCGI-enabled PHP
ii  php8.1-mysql    8.1.12-1ubuntu2.3  amd64  MySQL module for PHP

Ключевые моменты при интерпретации результата:

  • ii – пакет установлен и функционирует.
  • Следующее поле – имя пакета (php8.1-cli), по которому определяется версия PHP (8.1).
  • Третье поле – точная версия пакета, полезная при обновлениях или проверке патчей.

Для получения только версии PHP CLI можно использовать:

dpkg -l | grep php | grep cli

sudo apt install php-cli

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

Проверка нескольких установленных версий PHP в системе

Проверка нескольких установленных версий PHP в системе

Для выявления всех версий PHP, установленных на Ubuntu, используется пакет update-alternatives и утилиты командной строки. Начните с отображения текущих альтернатив:

sudo update-alternatives --display php

ls -la /usr/bin/php*

После определения всех доступных версий рекомендуется проверить их точные номера:

Команда Назначение
php7.4 -v Отображает версию PHP 7.4
php8.1 -v Отображает версию PHP 8.1
php -v Текущая версия, выбранная системой по умолчанию

Для переключения между версиями используйте:

sudo update-alternatives --config php

Команда покажет нумерованный список доступных версий. Выберите необходимую, введя соответствующий номер. После смены версии убедитесь в корректности выполнения скриптов, используя php -v.

Для веб-сервера Apache или Nginx необходимо активировать соответствующий модуль PHP. Для Apache:

sudo a2dismod php7.4 && sudo a2enmod php8.1 && sudo systemctl restart apache2

Для Nginx убедитесь, что в fastcgi_pass указан сокет или порт нужной версии PHP-FPM, затем перезапустите сервис:

sudo systemctl restart php8.1-fpm

Вопрос-ответ:

Как узнать, какая версия PHP установлена на Ubuntu через терминал?

Откройте терминал и введите команду php -v. После выполнения вы увидите строку с номером версии PHP, например, «PHP 8.2.1». Эта команда работает с любой стандартной установкой PHP и сразу показывает основную информацию о версии и сборке.

Можно ли проверить версию PHP для конкретного веб-сервера, например Apache или Nginx?

Да, для этого создайте файл с расширением .php в корне веб-сервера, например info.php, и поместите в него код <?php phpinfo(); ?>. После этого откройте этот файл через браузер по адресу вашего сервера. В открывшейся странице будет указана версия PHP, используемая веб-сервером, а также другие настройки и загруженные расширения.

Что делать, если команда php -v не выводит версию?

Если терминал сообщает, что команда не найдена, значит PHP не установлен или не добавлен в системный путь. Проверьте установку командой which php. Если путь не отображается, установите PHP через пакетный менеджер командой sudo apt install php и после установки снова выполните php -v.

Как узнать версию PHP для нескольких установленных версий на Ubuntu?

На Ubuntu можно установить несколько версий PHP одновременно. Для переключения между ними используется команда update-alternatives. Например, чтобы проверить все доступные версии, выполните update-alternatives --list php. После выбора нужной версии можно снова использовать php -v для проверки активной версии.

Ссылка на основную публикацию