Вопрос или проблема
У меня есть Centos 7.9 с установленным PHP 7.4.33. Я выполнил следующие команды для обновления версии PHP до 8.1:
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y yum-utils
sudo yum-config-manager --enable remi-php81
sudo yum-config-manager --disable remi-php74
sudo yum install -y php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
Но в конце он возвращает:
Нет пакета php.
Нет пакета php-common.
Нет пакета php-opcache.
Нет пакета php-mcrypt.
Нет пакета php-cli.
Нет пакета php-gd.
Нет пакета php-curl.
Нет пакета php-mysqlnd.
Ошибка: Нечего делать.
Я повторил с этим:
yum --disablerepo="*" --enablerepo="remi-php81" list available
Получил тот же результат. Также попробовал:
sudo yum clean all
sudo yum update
и:
sudo yum install -y php81 php81-common php81-opcache php81-cli php81-gd php81-curl php81-mysqlnd
То же самое…
Что мне делать?
Обновление:
У меня есть Cpanel WHM на этом сервере. В менеджере версий PHP я смог изменить версию на 8. Но что я хочу, так это 8.1, и ее нет среди опций.
Вам следует обновить пакеты, а не устанавливать их:
yum update php\*
Ответ или решение
Для обновления PHP до версии 8.1 на сервере с операционной системой CentOS 7.9, выполните следующие шаги. Ваша текущая конфигурация использует PHP 7.4.33 и столкнулась с проблемами при установке новой версии. Ниже описаны корректные действия для решения возникшей ситуации.
Шаг 1: Установка репозитория Remi
Убедитесь, что репозиторий Remi корректно установлен, так как он предлагает актуальные версии PHP. Для этого выполните следующую команду:
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
Шаг 2: Установка yum-utils
Убедитесь, что у вас установлен пакет yum-utils
, который поможет вам управлять репозиториями:
sudo yum install -y yum-utils
Шаг 3: Активация репозитория PHP 8.1
Включите репозиторий для PHP 8.1 и отключите репозиторий для PHP 7.4, чтобы избежать конфликтов версий:
sudo yum-config-manager --enable remi-php81
sudo yum-config-manager --disable remi-php74
Шаг 4: Очистка кэша данных менеджера пакетов
Прежде чем продолжить установку, рекомендуется очистить кэш yum
, чтобы избавиться от потенциально устаревших данных:
sudo yum clean all
Шаг 5: Проверка доступных пакетов
Для проверки наличия пакетов PHP под управлением нового репозитория выполните:
yum --disablerepo="*" --enablerepo="remi-php81" list available
Это поможет убедиться, что пакеты PHP 8.1 доступны для установки.
Шаг 6: Установка PHP 8.1
Теперь вы можете установить PHP 8.1 и необходимые модули:
sudo yum install -y php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
Если эта команда не находит нужные пакеты, убедитесь, что у вас есть активная сеть и доступ к репозиторию.
Шаг 7: Проверка версии PHP
После выполнения установки проверьте текущую версию PHP:
php -v
Вы должны увидеть установленную версию PHP 8.1.
Шаг 8: Конфигурация cPanel WHM
Если на вашем сервере установлена cPanel/WHM, вы можете управлять версиями PHP через интерфейс. Однако для установки PHP 8.1 необходимо убедиться, что соответствующий модуль доступен в cPanel. Возможно, потребуется обновить систему cPanel или использовать настройки EasyApache для управления версиями PHP.
Заключение
Если вы следовали всем этапам, но проблемы не устранены, это может указывать на конфликты с другими установленными версиями PHP или отсутствием необходимых зависимостей. В таком случае полезно обратиться к документации cPanel или форумам сообщества, чтобы найти решение специфических проблем, связанных с конфигурацией.
Надеюсь, эти инструкции помогут вам успешно обновить PHP до версии 8.1 на вашем сервере CentOS 7.9.