PHP

Как включить нужную версию PHP: сайт, терминал, Apache и PHP-FPM

Короткий ответ: версию PHP включают не “вообще”, а для конкретного места: для командной строки, для сайта в Apache, для Nginx через PHP-FPM или для домена в панели хостинга. Поэтому сначала нужно понять, где именно вам нужна версия: php -v в терминале, WordPress в браузере, Composer, Laravel, Open Server, Ubuntu или хостинг

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

Как проверить PHP в терминале

php -v
which php

Эти команды показывают PHP для командной строки. Он важен для Composer, консольных скриптов, Laravel artisan, Symfony console и запуска php script.php

На Ubuntu переключение CLI-версии часто делают так

sudo update-alternatives --config php

Но это не гарантирует, что сайт в браузере тоже переключился

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

Создайте временный файл в корне сайта

<?php

echo PHP_VERSION;

Откройте его через браузер. Это покажет PHP, который реально выполняет сайт

Для более подробной диагностики можно временно использовать

<?php

phpinfo();

После проверки удалите файл

Если сайт на Apache

Apache может работать через модуль PHP. Тогда включение версии связано с модулями Apache

sudo a2dismod php8.2
sudo a2enmod php8.3
sudo systemctl restart apache2

Номера версий замените на те, которые установлены в вашей системе. Если Apache работает через PHP-FPM, эта схема может не подойти

Если сайт на Nginx

Nginx обычно не выполняет PHP сам. Он отправляет .php файлы в PHP-FPM. Значит нужно проверить строку fastcgi_pass

fastcgi_pass unix:/run/php/php8.3-fpm.sock;

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

sudo nginx -t
sudo systemctl restart php8.3-fpm
sudo systemctl restart nginx

Если в конфиге остался сокет старой версии, сайт будет работать на старом PHP

Если вы на хостинге

В панели хостинга версия PHP обычно выбирается для конкретного сайта или домена. Ищите раздел “Версия PHP”, “Настройки PHP”, “WWW-домены”, “Сайты” или похожий блок

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

Если вы в Open Server или XAMPP

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

Мини-практика

Сделайте две проверки: php -v в терминале и echo PHP_VERSION через браузер. Запишите оба результата. Затем включите нужную версию PHP в своем окружении и повторите обе проверки

Если версии отличаются, подпишите, какая версия относится к CLI, а какая к сайту. Это сильно помогает при отладке Composer, WordPress, Laravel и обычных PHP-страниц

Частые ошибки

Переключили PHP в терминале, но сайт работает через PHP-FPM старой версии

Изменили версию в панели хостинга не для того домена

Поменяли конфигурацию, но не перезапустили Apache, Nginx или PHP-FPM

Проверяют только php -v, хотя проблема в браузерной версии сайта

Не устанавливают расширения для новой версии PHP

Оставляют phpinfo.php на публичном сайте после диагностики

Что почитать дальше по PHP

Если нужен общий маршрут по теме, откройте рубрику PHP. Для соседних задач пригодятся эти разборы:

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные

Настройки cookie

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x