Как узнать текущую версию PHP на сервере

Как узнать версию php

Как узнать версию php

От точной версии PHP зависит совместимость веб-приложений, корректная работа фреймворков и безопасность сайта. Например, PHP 7.4 больше не поддерживается, а использование PHP 8.2 или 8.3 даёт доступ к актуальным улучшениям и исправлениям. Поэтому перед настройкой CMS или установкой модулей важно проверить, какая версия языка сейчас активна на сервере.

Проверка версии может выполняться разными способами: через консоль с помощью команды php -v, просмотром информации в системных пакетах или созданием простого скрипта на PHP с функцией phpinfo(). Дополнительно сведения часто можно найти в панели управления хостингом или в логах веб-сервера.

Знание точной версии позволяет определить, доступны ли современные функции, такие как enum или улучшенная типизация в PHP 8, и своевременно спланировать обновление. Игнорирование этого шага повышает риск ошибок при установке библиотек и снижает уровень безопасности приложения.

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

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

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

PHP 8.2.10 (cli) (built: Aug 31 2023 10:12:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend Technologies
Значение
PHP 8.2.10 Текущая версия интерпретатора
(cli) Используется интерфейс командной строки
NTS/ZTS Режим потокобезопасности (Non Thread Safe / Thread Safe)
Zend Engine Версия движка PHP, используемого для выполнения кода

Если команда не выполняется, проверьте, установлен ли PHP в системе и добавлен ли он в переменную окружения PATH. На серверах с несколькими версиями PHP может потребоваться запуск php7.4 -v, php8.1 -v или указание полного пути к бинарному файлу, например /usr/bin/php -v.

Создайте новый файл, например info.php, и поместите в него одну строку кода:

<?php phpinfo(); ?>

Загрузите файл в корневую директорию сайта и откройте его в браузере, указав путь http://домен/info.php. На странице отобразится подробная конфигурация PHP, где в первом блоке «PHP Version» будет указана текущая версия интерпретатора.

После проверки удалите файл с сервера, так как открытый доступ к phpinfo() раскрывает информацию о модулях, путях и настройках окружения, что может представлять угрозу безопасности.

Определение версии PHP через пакетный менеджер (apt, yum, dnf)

Определение версии PHP через пакетный менеджер (apt, yum, dnf)

На серверах с Debian или Ubuntu удобнее всего проверить установленную версию PHP через apt. Для этого выполните:

apt list --installed | grep php

Команда отобразит все установленные пакеты, включая точную версию основного интерпретатора и расширений.

В CentOS 7 и старых системах используется yum. Узнать версию можно так:

yum list installed | grep php

На CentOS 8, Fedora и RHEL применяется dnf. Аналогичная команда:

dnf list installed | grep php

rpm -q php

Таким образом можно быстро проверить текущую версию PHP, не обращаясь к самому интерпретатору.

Проверка версии PHP в настройках панели управления хостинга

Большинство хостингов предоставляет доступ к выбору и контролю версии PHP через панель управления. Проверка выполняется по одинаковому принципу, но названия разделов могут отличаться.

  • Войдите в панель управления (cPanel, ISPmanager, DirectAdmin или аналогичную).
  • Найдите раздел, связанный с PHP. Чаще всего он называется «Select PHP Version», «PHP Settings» или «Версия PHP».
  • В открывшемся окне будет указана активная версия PHP для конкретного сайта или всего аккаунта.

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

Если вы используете cPanel:

  1. Перейдите в «Software» → «Select PHP Version».
  2. В верхней части страницы отобразится текущая версия.
  3. При необходимости выберите другую из выпадающего списка и сохраните изменения.

В ISPmanager:

  1. Откройте раздел «Настройки веб-сервера».
  2. Перейдите к параметрам сайта и посмотрите выбранную версию PHP.

Эти действия позволяют проверить актуальную конфигурацию без использования скриптов и терминала.

Определение версии PHP через Apache или Nginx конфигурацию

В Apache версия PHP указывается в настройках модуля или обработчика. Для связки mod_php строка с LoadModule в файле httpd.conf или apache2.conf содержит путь к библиотеке, где название файла включает номер версии, например libphp8.1.so. Если используется PHP-FPM, обратите внимание на директиву ProxyPassMatch или SetHandler, где указывается сокет или порт пула, соответствующего определённой версии.

В Nginx версия PHP определяется через блок location, где настроен fastcgi_pass. Путь к сокету или порту содержит номер версии, например unix:/run/php/php7.4-fpm.sock или 127.0.0.1:9000 для пула PHP-FPM. Конкретный номер версии можно проверить в названии сокета или в конфигурационном файле пула, расположенном в /etc/php/[версия]/fpm/pool.d/.

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

Использование composer для отображения версии PHP

Использование composer для отображения версии PHP

Composer предоставляет удобный способ проверки версии PHP, установленной на сервере. Для этого используется команда:

composer diagnose

Ещё один способ – выполнить:

composer show --platform

Здесь будут перечислены платформенные пакеты, включая php и его версию. Такой подход полезен при проверке требований зависимостей, так как Composer учитывает именно эту информацию при установке библиотек.

composer config -g platform.php

Команда выведет значение, установленное в конфигурации Composer. Если оно отсутствует, используется фактическая версия PHP на сервере.

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

Как узнать версию PHP через консоль на сервере?

Самый простой способ — выполнить команду php -v. Она выведет номер установленной версии, дату сборки и информацию о дополнительных модулях. Если на сервере несколько версий PHP, то результат может зависеть от того, какая версия указана по умолчанию в PATH.

Можно ли определить версию PHP, если у меня нет доступа к консоли?

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

Если на сервере несколько сайтов, как узнать, какую версию PHP использует каждый из них?

Версия PHP может отличаться в зависимости от настроек виртуального хоста или выбранного режима работы (например, через PHP-FPM или Apache модуль). Чтобы проверить, нужно выполнить phpinfo() именно в корне конкретного сайта. Таким образом можно убедиться, какая версия применяется именно для этого проекта.

Могу ли я узнать версию PHP через панель управления хостингом?

Да, многие панели, например cPanel, Plesk или ISPmanager, показывают текущую версию PHP в настройках домена или в разделе «PHP Settings». Там же часто можно переключаться между доступными версиями. Если раздела нет, можно уточнить информацию у техподдержки хостинга.

Чем отличается версия PHP, которую я вижу в консоли, от версии, которая работает через веб-сервер?

В консоли используется CLI-версия PHP, а при обращении через браузер — та, что подключена к веб-серверу. Иногда это разные сборки. Например, в терминале может быть одна версия, а для сайта используется более новая или наоборот. Поэтому важно проверять обе ситуации: php -v в консоли и phpinfo() через сайт.

Как можно узнать версию PHP через консоль, если есть доступ к серверу по SSH?

Если у вас есть SSH-доступ, проще всего выполнить команду `php -v`. Она выведет текущую версию PHP, а также дополнительные сведения — например, информацию о сборке, дате компиляции и используемом Zend Engine. Такой способ удобен, так как не требует редактирования файлов или настроек сайта.

Можно ли определить версию PHP без доступа к консоли, только средствами самого сайта?

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

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