Aktualizacja PHP – Nextcloud
24 lipca, 2025Używając Nextclouda prędzej czy później pojawiła się konieczność aktualizacji PHP do wersji akceptowanej przez nowsze wersje NC.
Zwykła instalacja nowszego PHP i przełączenie na nowszą wersje kończyło się brakiem współpracy ze strony NC. Podobnie doczekanie do aktualizacji PHP po stronie dystrybucji nie poprawiało sytuacji więc w końcu stwierdziłem, że trzeba rozkminić na czym polega problem.
Okazało się, ze przy aktualizacji nie instalują się wszytkie wymagane moduły php.
Jak to zwalczyć? Tak jak poniżej – działa na dzień 24.07.2025r.
Sprawdzenie jakie moduły są zainstalowane z php 8.1
sudo dpkg -l |grep php8.1 |tee packages.txt
Sprawdzenie jakie moduły przyszły domyślnie z nowym PHP
sudo dpkg -l |grep php8.2 |tee packages.txt
Instalacje tego czego nie ma w wersji 8.2
sudo apt-get install php8.2-bcmath php8.2-gmp php8.2-ldap
włączenie wersji php 8.2 w Apache2
a2enmod php8.2
Wyłączenie php8.1 w Apache2
sudo a2dismod php8.1
Restart Apache2
sudo systemctl restart apache2
Przełączenie php na nowszą wersję
sudo update-alternatives –config php
There are 4 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
————————————————————
0 /usr/bin/php8.4 84 auto mode
* 1 /usr/bin/php8.1 81 manual mode
2 /usr/bin/php8.2 82 manual mode
Press <enter> to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/php8.2 to provide /usr/bin/php (php) in manual mode
restart Apache2
sudo service apache2 restart
Sprawdzenie aktualnej wersji PHP
php -v
PHP 8.2.29 (cli) (built: Jul 3 2025 13:07:49) (NTS)
No i na sam koniec, jak już wiadomo, że wszystko śmiga poprawnie, należy wyczyścić niepotrzebne php.
sudo apt-get remove –purge php8.1*