
Версия PHP напрямую влияет на безопасность и совместимость веб-приложений. Устаревшие сборки содержат уязвимости и не поддерживают современные функции. Проверка установленной версии на сервере CentOS позволяет определить, требуется ли обновление или настройка окружения.
На серверах с несколькими версиями PHP полезно проверить, какой бинарный файл используется по умолчанию. Для этого применяют команду which php или просматривают настройки alternatives в CentOS. Такой подход исключает ошибки при отладке и конфигурации приложений.
Проверка версии PHP через команду php -v

PHP 8.1.12 (cli) (built: Oct 31 2023 10:42:17) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.1.12, Copyright (c) Zend Technologies
Первая строка содержит номер версии – в примере это 8.1.12. Если команда не найдена, установите пакет php-cli с помощью sudo dnf install php-cli. После установки снова выполните php -v для проверки.
При использовании нескольких версий PHP может быть активна не та, что нужна. Для проверки полного пути к бинарному файлу примените which php. Если путь указывает на неверную версию, настройте альтернативы через sudo alternatives --config php и выберите нужный вариант.
Команду выполняют в терминале под пользователем с доступом к PHP CLI. Если PHP не установлен или путь не прописан, система вернет сообщение об отсутствии команды. В этом случае проверяют пакет php-cli через yum list installed php-cli или устанавливают его.
Для получения только номера версии без лишних строк применяют php -r "echo PHP_VERSION;", что полезно для автоматизации скриптов или мониторинга.
Определение версии PHP через yum list installed
Команда yum list installed позволяет быстро определить установленный пакет PHP и его точную версию.
- Откройте терминал с правами root или используйте
sudo. - Выполните команду:
yum list installed | grep php - В списке найдите строку вида:
php.x86_64 7.4.33-1.el7 @remi-php74
Первая часть указывает пакет (php.x86_64), вторая – версию (7.4.33), третья – репозиторий. Если установлено несколько пакетов (php-cli, php-common), версии должны совпадать. Несоответствия сигнализируют о проблемах с обновлением.
yum list installed php | awk '{print $2}'
yum.Регулярная проверка гарантирует актуальность версии и упрощает управление зависимостями.
Просмотр версии PHP через команду rpm -qa

Для получения информации о версии установленного PHP используйте пакетный менеджер rpm. Выполните команду:
rpm -qa | grep php
php-7.4.33-1.el8.x86_64
php-cli-7.4.33-1.el8.x86_64
php-common-7.4.33-1.el8.x86_64
Первая часть строки указывает имя пакета, цифры после него – версию. Чтобы отобразить только главный пакет PHP без модулей, используйте:
rpm -qa | grep ^php-[0-9]
Для сортировки результата удобно применить команду:
rpm -qa | grep php | sort
Проверка версии PHP-FPM через systemctl status

Для отображения активного процесса PHP-FPM выполните команду:
systemctl status php-fpm
Если на сервере установлено несколько версий, уточните нужную службу: systemctl status php-fpm80 или systemctl status php-fpm81. Используйте команду systemctl list-units --type=service | grep php-fpm для просмотра всех доступных юнитов PHP-FPM.
Создание phpinfo() файла и просмотр в браузере

Для точного определения версии PHP на сервере CentOS создайте файл с именем info.php в корневой директории веб-сервера, обычно /var/www/html/. Внутри файла добавьте следующий код:
<?php
phpinfo();
?>
Сохраните файл и убедитесь, что права доступа позволяют веб-серверу читать файл (обычно chmod 644 info.php). После этого откройте браузер и перейдите по адресу:
http://ваш_домен/info.php или http://IP_сервера/info.php
На открывшейся странице отобразятся подробные сведения о конфигурации PHP, включая версию, загруженные модули и настройки окружения. Интересующие параметры можно оформить в виде таблицы для быстрого анализа:
| Параметр | Описание |
|---|---|
| PHP Version | Текущая версия PHP, установленная на сервере |
| Loaded Configuration File | Путь к файлу php.ini, используемому веб-сервером |
| Server API | Интерфейс между веб-сервером и PHP (например, Apache 2.0 Handler или FPM/FastCGI) |
| Extensions | Список подключенных модулей PHP и их версии |
| Directive Values | Текущие значения основных директив PHP, таких как memory_limit или post_max_size |
После проверки рекомендуется удалить info.php с сервера для предотвращения раскрытия конфиденциальной информации о конфигурации.
Сравнение версии PHP с системными пакетами

Для точного контроля версии PHP важно сверять её с установленными пакетами системы. В CentOS версии PHP привязаны к конкретным репозиториям, поэтому несоответствие может привести к конфликтам при обновлениях.
Проверка версии PHP через консоль:
php -v– отображает текущую версию интерпретатора.rpm -qa | grep php– список всех установленных PHP-пакетов с их версиями.
Сравнение версий позволяет выявить:
- Несоответствие между версией CLI и модулями Apache/Nginx.
- Устаревшие расширения, несовместимые с текущей версией интерпретатора.
- Дубликаты пакетов из разных репозиториев (например, Remi и EPEL).
Для обновления пакетов до согласованной версии используйте:
- Добавьте необходимый репозиторий, например
yum install https://rpms.remirepo.net/enterprise/remi-release-8.rpm. - Активируйте нужную версию PHP:
dnf module enable php:8.2. - Обновите все пакеты PHP:
yum update php\*.
После обновления повторно выполните php -v и rpm -qa | grep php, чтобы убедиться, что версия интерпретатора совпадает с системными пакетами и все расширения корректно загружены.
Вопрос-ответ:
Как узнать, какая версия PHP установлена на сервере CentOS через командную строку?
Для проверки версии PHP через терминал нужно выполнить команду php -v. После этого отобразится строка с номером версии и дополнительной информацией о сборке и загруженных модулях. Например, вывод может выглядеть как «PHP 8.2.3 (cli)». Эта команда работает при условии, что PHP установлен и доступен в переменной окружения PATH.
Можно ли проверить версию PHP через веб-интерфейс на CentOS?
Да, для этого создается небольшой PHP-файл на сервере, обычно с названием info.php, содержащий строку <?php phpinfo(); ?>. После открытия файла в браузере на сервере откроется страница с подробной информацией о PHP, включая версию, установленные расширения и конфигурацию. Этот способ особенно удобен для веб-серверов, где нет прямого доступа к терминалу.
Что делать, если команда php -v не показывает версию PHP?
Если при вводе php -v появляется ошибка или команда не найдена, вероятно, PHP не установлен или его бинарный файл не находится в стандартных путях. В этом случае нужно проверить, установлен ли PHP с помощью yum list installed | grep php и, при необходимости, установить пакет через sudo yum install php. После установки команда php -v должна вернуть версию.
Можно ли узнать версию PHP для конкретного веб-сайта на сервере CentOS?
Да, можно. Если веб-сайт использует отдельный виртуальный хост с собственными настройками, стоит создать в корневой директории сайта файл info.php с командой phpinfo();. При открытии этого файла через браузер отобразится версия PHP, которая используется именно для этого сайта, а также другие настройки окружения. Это важно, если на сервере установлено несколько версий PHP.
Какая команда покажет версию PHP вместе с информацией о загруженных модулях?
Для подробной информации о PHP и подключенных расширениях можно использовать команду php -m, которая выводит список всех модулей. Если нужна версия вместе с модулями, можно объединить команды: php -v && php -m. Это позволяет увидеть одновременно номер версии PHP и перечень активных расширений на сервере.
