Май 132022
 

Когда возникла необходимость обновить какую то нибыло платформу, а она требует новую версию PHP, или например это надо сделать принудительно, а Ваша операционная система Debian, ее не поддерживает по умолчанию, что делать? Правильно, читать данную заметку. И так, поехали.

1. Обновляем обязательно систему

apt update
apt -y upgrade

2. Желательно перезагружаем (особенно это касается моментов, когда ОЧЕНЬ давно не обновлялись).

reboot

3. Ставим wget, если у вас его нет.

apt install -y wget

4. Добавляем новый репозиторий

apt install -y lsb-release ca-certificates apt-transport-https software-properties-common gnupg2
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list
wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -

Альтернатива последней команды указана ниже, так как в ближайшее время, команда apt-key будет заменена (но я думаю вряд ли)

wget -qO - https://packages.sury.org/php/apt.gpg | gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/apt.gpg --import
chmod 644 /etc/apt/trusted.gpg.d/apt.gpg

5. Обновляем репозиторий

apt update

6. Устанавливаем новую версию PHP

apt install php8.1

7. Проверяем корректность новой установленной версии PHP

php -v

8. На сладкое устанавливаем новые версии расширений для PHP 8.1 (как пример, он у Вас может быть совершенно другой)

apt install php8.0-{mysql,cli,common,imap,ldap,xml,fpm,curl,mbstring,zip}

9. Проверяем корректность установленных новых модулей PHP

php -m

5. Если необходимости удалять старые версии нет, то можно выставить приоритет использования установленных PHP версий

update-alternatives --config php

Полезные ссылки:
How To Install PHP 8.0 on Debian 11/10/9
Как установить/обновить PHP 8.1 в Ubuntu/Debian
Warning: apt-key is deprecated

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)