В операционной системе Ubuntu проверка версии PHP – стандартная процедура, которая может быть полезна как для администраторов, так и для разработчиков. Она позволяет удостовериться, что установленная версия PHP соответствует требованиям проекта или приложению. Если система работает с несколькими версиями PHP, важно точно знать, какая версия активна в данный момент, чтобы избежать ошибок и несовместимостей.
Если вы хотите проверить доступные версии PHP, установленные в системе, можно воспользоваться командой update-alternatives --display php
. Это покажет все зарегистрированные версии PHP, что позволяет быстро переключаться между ними в зависимости от задач. Для смены версии на другую используйте sudo update-alternatives --config php
.
Проверка версии PHP через командную строку
Чтобы проверить установленную версию PHP в Ubuntu, достаточно воспользоваться командой в терминале. Это самый быстрый и удобный способ получить точные данные о версии PHP на вашем сервере или локальной машине.
Основная команда для проверки версии PHP:
php -v
PHP 8.1.2 (cli) (built: Feb 23 2022 17:09:09) (NTS)
В некоторых случаях на сервере может быть установлено несколько версий PHP. Чтобы узнать, какая версия используется по умолчанию, используйте команду:
php -v
Если необходимо проверить версии PHP, установленные для различных версий командной строки, можно использовать команду:
update-alternatives --display php
Для систем, где используется несколько версий PHP (например, для Apache и CLI), можно проверить активную версию для веб-сервера:
apache2ctl -M | grep php
Если на сервере или в проекте используется несколько версий PHP, для переключения между ними можно использовать следующие команды:
- Для смены версии PHP для командной строки:
sudo update-alternatives --set php /usr/bin/phpX.X
Где X.X
– это нужная версия PHP (например, 7.4 или 8.0). После этого можно снова выполнить команду php -v
, чтобы убедиться, что версия изменилась.
Кроме того, для получения версии PHP, используемой в веб-сервере Apache, можно воспользоваться специальной страницей PHP-скрипта с командой:
echo "" | sudo tee /var/www/html/info.php
После этого откройте веб-браузер и перейдите по адресу http://localhost/info.php
, чтобы увидеть полную информацию о версии PHP, расширениях и конфигурации. Не забудьте удалить этот файл после проверки, чтобы избежать угроз безопасности:
sudo rm /var/www/html/info.php
Использование команды php -v для определения версии
При запуске команды будет отображено сообщение следующего формата:
PHP 7.4.3 (cli) (built: Jan 2 2020 18:35:23) ( NTS ) Copyright (c) 1997-2020 The PHP Group Zend Engine v3.4.0, Copyright (c) 1998-2020 Zend Technologies
Если в системе используется несколько версий PHP, команда php -v
отобразит версию по умолчанию, которая активна на данный момент. Для проверки других версий можно воспользоваться инструментом update-alternatives
или изменить конфигурацию с помощью команд sudo update-alternatives --config php
, чтобы указать предпочтительную версию.
Если команда не сработала, вероятно, PHP не установлен. В таком случае установите его с помощью команды sudo apt install php
.
Проверка версии PHP для разных версий через update-alternatives
Для проверки версии PHP, установленной в системе Ubuntu, можно использовать инструмент update-alternatives
. Он позволяет управлять несколькими версиями PHP, настроенными на одном сервере. Это полезно, если требуется переключение между версиями для разных проектов или для тестирования совместимости.
Чтобы увидеть, какие версии PHP доступны через update-alternatives
, выполните команду:
sudo update-alternatives --display php
php - auto mode
link best version: php-7.4
link current version: php-7.4
slavenode /usr/bin/php-7.4
Для смены активной версии PHP используйте команду:
sudo update-alternatives --config php
После этого система предложит список доступных версий, и вы сможете выбрать нужную, введя соответствующий номер. Например:
There are 2 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/bin/php7.4 74 auto mode
1 /usr/bin/php7.3 73 manual mode
2 /usr/bin/php7.4 74 manual mode
После выбора версии PHP необходимо перезапустить веб-сервер, чтобы изменения вступили в силу. Для Apache используйте:
sudo systemctl restart apache2
Для Nginx:
sudo systemctl restart nginx
Таким образом, update-alternatives
предоставляет удобный способ работы с несколькими версиями PHP, позволяя быстро переключаться между ними и управлять ими в системе Ubuntu.
Как узнать версию PHP для веб-сервера Apache
Чтобы узнать версию PHP, работающую с Apache на вашем сервере, выполните следующие действия:
- Откройте терминал.
- Используйте команду
php -v
для получения информации о версии PHP, установленной в системе. Эта команда отобразит общие данные о версии PHP, включая номер версии и дополнительные сведения о сборке.
Однако, если ваш сервер использует Apache и вы хотите узнать, какую версию PHP Apache использует для обработки запросов, есть несколько способов:
- Проверьте файл конфигурации Apache:
- Откройте файл
/etc/apache2/mods-enabled/php*.conf
(где * – это версия PHP, например, php7.4.conf) с помощью текстового редактора. - Найдите строку, которая указывает на путь к PHP-исполнителю, например,
PHPIniDir
. Это поможет вам понять, какую версию PHP использует Apache.
- Откройте файл
- Используйте скрипт PHP: Создайте файл
info.php
в директории вашего веб-сервера, например,/var/www/html/info.php
, с таким содержанием:<?php phpinfo(); ?>
- Затем откройте этот файл в браузере, перейдя по адресу
http://localhost/info.php
. - На странице будет отображена полная информация о конфигурации PHP, включая версию, настройки и модули, подключенные к Apache.
- Затем откройте этот файл в браузере, перейдя по адресу
После получения данных можно удалить этот файл, чтобы избежать утечек конфиденциальной информации.
Как проверить версию PHP для Nginx
Для того чтобы проверить версию PHP, работающую с сервером Nginx на Ubuntu, потребуется использовать командную строку. Важно понимать, что Nginx сам по себе не обрабатывает PHP. Он передает запросы на обработку через PHP-FPM (FastCGI Process Manager), поэтому необходимо убедиться, что PHP-FPM установлен и настроен корректно.
Чтобы узнать, какая версия PHP используется для Nginx, выполните команду:
php-fpm -v
Эта команда вернет информацию о версии PHP, установленной на сервере. Однако, если у вас несколько версий PHP, важно уточнить, какая именно версия PHP-FPM используется для Nginx. Для этого можно проверить конфигурацию Nginx, открыв файл конфигурации сайта. Например:
sudo nano /etc/nginx/sites-available/default
Ищите строку, которая указывает на использование PHP через PHP-FPM, например:
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
Эта строка покажет путь к сокету, через который Nginx взаимодействует с PHP-FPM. В данном случае используется версия PHP 7.4. Для точного определения версии PHP, указанной в конфигурации, используйте соответствующий путь к сокету или порту для каждой версии PHP.
Также можно использовать команду:
ps aux | grep php-fpm
Это покажет все процессы PHP-FPM, их версии и состояния. Обратите внимание на процессы с конкретной версией PHP, которые обрабатывают запросы Nginx.
Таким образом, вы можете точно определить, какая версия PHP используется для обработки запросов Nginx на вашем сервере Ubuntu.
Проверка версии PHP в конкретном виртуальном хосте
Для проверки версии PHP, используемой на конкретном виртуальном хосте, необходимо учитывать, что сервер может обслуживать несколько сайтов с различными конфигурациями PHP. Важно убедиться, что вы проверяете версию PHP именно для нужного хоста, а не для всей системы.
1. В первую очередь, необходимо выяснить, какой файл конфигурации PHP используется для конкретного виртуального хоста. Для этого откройте файл конфигурации Apache или Nginx, который относится к нужному сайту. В случае Apache файл конфигурации обычно находится в папке /etc/apache2/sites-available/, а для Nginx – в /etc/nginx/sites-available/.
2. В конфигурации хоста найдите строку с параметром DocumentRoot
, который указывает на корень веб-директории. Важно, чтобы вы знали точное местоположение вашего сайта.
3. Далее, для проверки версии PHP на этом хосте можно создать простой PHP-скрипт. В корневой директории сайта создайте файл, например, info.php
, и вставьте в него следующий код:
4. После того как файл создан, откройте его через браузер, перейдя по адресу http://yourdomain.com/info.php
, где yourdomain.com
– это домен вашего виртуального хоста. На странице отобразится вся информация о текущей конфигурации PHP, включая её версию.
5. В случае, если на сервере используется несколько версий PHP, можно дополнительно проверить, какая версия активна для конкретного виртуального хоста, добавив директиву php_value
или SetEnv
в конфигурацию хоста в файле Apache или Nginx. Это позволит использовать нужную версию PHP для данного сайта, даже если на сервере установлены разные версии для других хостов.
Также стоит отметить, что для каждого виртуального хоста можно настроить свою версию PHP, используя FPM (FastCGI Process Manager). Для этого укажите путь к нужной версии PHP-FPM в конфигурации хоста. Пример для Apache:
ServerAdmin webmaster@yourdomain.com DocumentRoot /var/www/yourdomain.com ServerName yourdomain.com SetHandler "proxy:fcgi://127.0.0.1:9000"
В этом примере запросы к файлам .php будут обрабатываться через PHP-FPM на порту 9000, где должна быть настроена нужная версия PHP.
Таким образом, проверка версии PHP для конкретного виртуального хоста может быть выполнена через создание PHP-скрипта или с помощью настройки конфигурации сервера для конкретного хоста.
Использование PHP-скрипта для проверки версии
Для проверки версии PHP на сервере можно использовать простой PHP-скрипт. Создайте новый файл с расширением .php и добавьте следующий код:
Этот код выведет текущую версию PHP на сервере. Сохраните файл и загрузите его на сервер. Затем откройте его в браузере, например, http://example.com/yourfile.php
, и увидите версию PHP, которая используется.
Если требуется дополнительная информация о конфигурации PHP, используйте функцию phpinfo()
. Это вызовет страницу с подробными данными о сервере, включая версию PHP и настройки:
Этот метод полезен для более глубокой диагностики и настройки сервера. Чтобы ограничить доступ к скрипту, рекомендуется удалить его после проверки, чтобы не оставлять конфиденциальную информацию доступной для посторонних.
Как обновить версию PHP в Ubuntu после проверки
Чтобы обновить версию PHP в Ubuntu, выполните несколько шагов через командную строку. Для начала убедитесь, что на вашей системе установлены последние версии репозиториев и пакетов.
Обновите список пакетов с помощью команды:
sudo apt update
После этого проверьте доступные версии PHP в репозиториях с помощью команды:
sudo apt-cache show php
Если нужная версия доступна, добавьте репозиторий, поддерживающий обновления для PHP. Например, для PHP 8.1 используйте команду:
sudo add-apt-repository ppa:ondrej/php
После добавления репозитория обновите список пакетов снова:
sudo apt update
Теперь установите нужную версию PHP. Для PHP 8.1 это будет команда:
sudo apt install php8.1
Чтобы установить дополнительные модули PHP для новой версии, используйте команду:
sudo apt install php8.1-cli php8.1-fpm php8.1-mysql
После установки новой версии PHP необходимо переключить активную версию. Используйте инструмент update-alternatives для этого:
sudo update-alternatives --set php /usr/bin/php8.1
Если у вас используется PHP-FPM, не забудьте изменить версию для него:
sudo update-alternatives --set php-fpm /usr/sbin/php-fpm8.1
Перезапустите службы Apache или Nginx для применения изменений:
sudo systemctl restart apache2
или
sudo systemctl restart nginx
После этого убедитесь, что новая версия PHP используется с помощью команды:
php -v