Понимание текущей версии PHP на сервере – важный шаг для обеспечения стабильности работы веб-приложений. Каждая версия PHP имеет свои особенности, улучшения производительности и исправления безопасности, которые могут существенно повлиять на функционирование сайта. Знание установленной версии позволяет избегать проблем совместимости, а также своевременно обновлять среду для использования новых функций.
Другой способ – создать специальный PHP-скрипт с командой phpinfo(). Для этого достаточно создать файл с расширением .php, разместить в нем следующий код:
После того как вы загрузите файл на сервер и откроете его в браузере, вы получите детальную информацию о версии PHP, конфигурации серверной среды и установленных расширениях. Этот метод идеален для тех случаев, когда доступ к серверу ограничен только через веб-интерфейс.
Для пользователей хостинга с панелью управления (например, cPanel или Plesk) есть удобные инструменты для отображения текущей версии PHP. В панели управления часто предоставляется возможность изменять версию PHP без необходимости вручную редактировать настройки сервера.
Проверка версии PHP через командную строку
Для проверки версии PHP через командную строку необходимо выполнить команду в зависимости от операционной системы сервера.
На Linux и macOS откройте терминал и выполните команду:
php -v
Эта команда вернёт информацию о текущей версии PHP, установленной на сервере, а также дополнительные сведения о конфигурации и возможных активных модулях.
Если в системе установлено несколько версий PHP, укажите полный путь к нужной версии. Например, для PHP 7.4 используйте:
/usr/bin/php7.4 -v
На Windows откройте командную строку и выполните аналогичную команду:
php -v
Если команда не распознаётся, убедитесь, что путь к PHP добавлен в переменную окружения PATH. Для этого перейдите в «Свойства системы» и отредактируйте переменную PATH, добавив путь к папке с PHP.
Также можно использовать команду php --version
для получения аналогичного результата, так как она является синонимом php -v
.
Если на сервере установлено несколько версий PHP, важно также использовать соответствующие команды для управления версиями, например, через инструменты вроде update-alternatives
на Linux.
Проверка версии PHP через командную строку является быстрым и точным способом определить, какая версия используется на сервере. Важно помнить, что в некоторых случаях сервер может работать с несколькими версиями PHP для разных сайтов, что нужно учитывать при конфигурировании серверного окружения.
Использование PHP-скрипта для отображения версии
Создайте файл с расширением .php, например, phpinfo.php. Внутри файла укажите одну строку кода:
<?php phpinfo(); ?>
Разместите файл в корневом каталоге веб-сервера, где размещаются сайты, например, в /var/www/html/ или /htdocs.
Откройте файл в браузере, указав путь к нему, например: http://ваш-домен/phpinfo.php или http://IP-адрес/phpinfo.php.
На открывшейся странице найдите строку PHP Version. Там указана точная версия, включая дополнительные сведения о сборке.
После проверки обязательно удалите файл phpinfo.php, чтобы закрыть доступ к технической информации о сервере.
Как узнать версию PHP через панель управления хостингом
Откройте панель управления, предоставленную хостингом. Чаще всего это cPanel, ISPmanager, DirectAdmin или Plesk.
cPanel: авторизуйтесь, найдите раздел «Select PHP Version» или «PHP Version». Текущая версия будет указана сразу или после перехода внутрь. Там же можно изменить версию при необходимости.
ISPmanager: войдите в интерфейс, откройте пункт меню «WWW-домены», выберите нужный домен, нажмите «Изменить». Версия PHP указана в поле «Версия PHP».
DirectAdmin: после входа перейдите в «Domain Setup», выберите домен, нажмите «PHP Version Selector». Отображается установленная версия и доступные варианты смены.
Plesk: зайдите в раздел «Домены», выберите нужный, перейдите в «Настройки хостинга» или «PHP настройки». Там указана активная версия.
Если панель имеет поиск, введите «PHP» – это ускорит доступ к нужному разделу.
Проверка версии PHP в файле phpinfo()
Создайте новый файл с расширением .php
в корневом каталоге сайта или в любом другом доступном каталоге веб-сервера. Назовите его, например, info.php
.
Добавьте в файл одну строку:
<?php phpinfo();
Откройте файл через браузер, указав полный путь, например: http://домен/путь/info.php
.
На загруженной странице найдите строку «PHP Version» в верхней части. Версия будет указана сразу после надписи, например: PHP Version 8.1.17
.
После проверки удалите файл или ограничьте к нему доступ, чтобы исключить утечку информации о конфигурации сервера.
Использование команды php -v для получения версии
Команда php -v
отображает текущую версию интерпретатора PHP, установленного в системе. Она выполняется в терминале Linux, macOS или в командной строке Windows при наличии переменной окружения PHP в PATH.
PHP 8.2.12 (cli) (built: Oct 31 2023 17:15:21) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.12, Copyright (c) Zend Technologies
Первая строка содержит основную информацию: номер версии, режим (CLI) и дату сборки. Если PHP не установлен или переменная окружения не настроена, команда выдаст ошибку. В таком случае проверьте расположение исполняемого файла через which php
в Unix-системах или where php
в Windows.
Для серверов с несколькими установленными версиями PHP используйте полный путь к нужному бинарному файлу, например: /usr/bin/php8.1 -v
или /opt/php7.4/bin/php -v
. Это позволит избежать путаницы при наличии нескольких интерпретаторов.
Если используется PHP в контейнере, команда должна выполняться внутри контейнера. Например, при использовании Docker: docker exec -it имя_контейнера php -v
.
Проверка версии PHP через файл .htaccess
В некоторых конфигурациях Apache можно определить активную версию PHP, анализируя директивы в файле .htaccess
. Такой подход работает, если сервер использует модуль mod_php
или поддерживает переключение версий через AddHandler
и AddType
.
Откройте или создайте файл .htaccess
в корневом каталоге сайта. Ищите строки вида:
AddHandler application/x-httpd-php81 .php
или
SetHandler application/x-httpd-php80
Числа в обозначениях указывают на версию PHP. Например, php81
соответствует PHP 8.1, php74
– PHP 7.4 и так далее.
Если таких строк нет, возможно, версия задаётся на уровне конфигурации сервера, а .htaccess
не используется для её управления. В этом случае стоит проверить другие методы, например, через phpinfo()
.
Изменение этих директив может привести к переключению версии, но делать это следует только при точном понимании конфигурации хостинга. Некоторые провайдеры используют собственные префиксы, поэтому перед изменениями стоит свериться с документацией хостинга.
Использование cPanel для определения версии PHP
Чтобы узнать версию PHP через cPanel, выполните следующие шаги:
- Войдите в cPanel с учётными данными, предоставленными хостинг-провайдером.
- Найдите раздел «Программное обеспечение» или «Software».
- Откройте пункт «Выбор версии PHP» или «Select PHP Version».
- В верхней части страницы будет указана текущая активная версия PHP для вашего аккаунта.
Если пункт «Select PHP Version» отсутствует:
- Перейдите в раздел «Информация о сервере» (Server Information) – версия PHP отображается в списке параметров сервера.
- Либо воспользуйтесь пунктом «PHP Info» или «PHP Configuration» – он открывает страницу с полной конфигурацией, включая версию PHP в самом верху.
Для изменения версии PHP:
- Вернитесь в «Select PHP Version».
- Выберите нужную версию из выпадающего списка и нажмите «Set as current».
Некоторые хостинги используют другой интерфейс – в таком случае точное название пунктов может отличаться. Если доступ к выбору версии отсутствует, обратитесь в техническую поддержку хостера.
Как обновить версию PHP на сервере
Перед обновлением PHP создайте резервную копию сайта и базы данных. Обновление может повлиять на работу скриптов, особенно если используются устаревшие функции.
Инструкция для серверов на базе Debian/Ubuntu:
- Добавьте репозиторий с актуальной версией PHP:
sudo add-apt-repository ppa:ondrej/php
sudo apt update
- Установите нужную версию PHP, например 8.2:
sudo apt install php8.2
- Установите необходимые модули:
sudo apt install php8.2-mysql php8.2-curl php8.2-mbstring php8.2-xml
- Переключите версию PHP для CLI:
sudo update-alternatives --set php /usr/bin/php8.2
- Для Apache:
sudo a2dismod php7.4
(или другая текущая версия)sudo a2enmod php8.2
sudo systemctl restart apache2
- Для Nginx:
- Убедитесь, что установлен php8.2-fpm:
sudo apt install php8.2-fpm
- Измените путь до сокета в конфигурации виртуального хоста Nginx, например:
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
sudo systemctl restart nginx
- Убедитесь, что установлен php8.2-fpm:
Проверьте версию PHP:
php -v
Если используется панель управления (например, cPanel или Plesk), обновление выполняется через веб-интерфейс панели в разделе управления PHP.
Вопрос-ответ:
Как узнать версию PHP через командную строку на сервере с Linux?
Откройте терминал и выполните команду `php -v`. В ответ вы увидите строку, содержащую номер версии PHP, а также дополнительные сведения, такие как информация о компиляции и установленные модули. Если на сервере установлено несколько версий PHP, возможно, потребуется указать путь к конкретному исполняемому файлу, например: `/usr/bin/php7.4 -v`.
Можно ли определить версию PHP через браузер?
Да, можно. Для этого создайте файл с расширением `.php` и добавьте в него строку ``. Загрузите этот файл на сервер и откройте его через браузер. Страница покажет подробную информацию о конфигурации PHP, включая его версию, установленные модули и параметры компиляции. После использования такой файл желательно удалить или закрыть доступ к нему, чтобы не оставлять открытые технические данные в общем доступе.
Что делать, если команда `php -v` не работает?
Если при вводе `php -v` появляется сообщение об ошибке или команда не распознаётся, это может означать, что PHP не установлен, не добавлен в переменную PATH или на сервере используется другой способ управления версиями. В таком случае попробуйте найти путь до PHP вручную с помощью команды `which php` или посмотреть список установленных пакетов, например через `apt list —installed | grep php` на Debian/Ubuntu. Также можно проверить конфигурационные файлы веб-сервера (например, Apache или Nginx), если PHP используется через модуль или FPM.
Как узнать, какая версия PHP используется конкретным сайтом на сервере?
Если на сервере установлено несколько версий PHP, важно понимать, какая именно подключена к конкретному виртуальному хосту. Это можно проверить в конфигурации веб-сервера. Например, в настройках Apache ищите директиву `SetHandler` или `ProxyPassMatch`, а в Nginx — блок `fastcgi_pass`. Эти параметры указывают, какая версия PHP обрабатывает запросы. Также можно временно добавить `phpinfo()`-файл в корень сайта и открыть его через браузер, чтобы увидеть точную версию PHP, которая обслуживает сайт.
Можно ли узнать версию PHP через панель управления хостингом?
Да, в большинстве популярных панелей управления, таких как cPanel, Plesk или ISPmanager, версия PHP отображается в настройках домена или разделе с конфигурацией сервера. Часто также предоставляется возможность переключать версию PHP для каждого сайта отдельно. Если в интерфейсе панели не отображается номер версии, попробуйте поискать разделы, связанные с PHP, или используйте встроенную функцию просмотра конфигурации.