Une recette courte pour qu’une mise à jour de SPIP 3 vers SPIP 4 se passe bien.
- mettre à jour tous les plugins utilisés par le site
- supprimer les répertoires
squelettes-dist
,plugins-dist
,ecrire
etprive
(étape optionnelle, mais elle permet de gagner du temps en évitant à spip_loader de scanner tous les fichiers pour mettre de côté ceux qui sont obsolètes) - lancer la mise à jour avec spip_loader
- supprimer le fichier .htaccess et le remplacer par la nouvelle version livrée avec SPIP
- se rendre dans la page de gestion des dépôts et supprimer tous les dépôts puis les ajouter de nouveau (cf ce bug de SVP https://git.spip.net/spip/svp/issues/4862)
En bonus, côté serveur, si on souhaite passer de PHP 7.4 à PHP 8.1 :
# lister les paquets PHP 7.4 installés
dpkg --get-selections | grep php7.4
# installer les mêmes paquets en version 8.1 (sauf -json qui est intégré au core dans cette version)
apt install php8.1 php8.1-cli php8.1-common php8.1-curl php8.1-fpm php8.1-gd php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-readline php8.1-sqlite3 php8.1-xml php8.1-zip
# désactiver PHP 7.4 et activer PHP 8.1 puis relancer apache pour prendre en compte le changement
a2disconf php7.4-fpm && a2enconf php8.1-fpm && service apache2 reload
# si vous n'avez plus besoin de PHP 7.4 vous pouvez désinstaller tous ses paquets ainsi que ces fichiers de configuration
apt remove --purge php7.4-*
rm -rf /etc/php/7.4/
Messages
17 septembre, 08:39, par jeanmarie
Merci pour ces notes très utiles :D
21 septembre, 10:29, par RealET
Et si c’est un site que vous n’avez pas fait, faire une copie de
squelettes-dist
parce que, parfois, le squelette du site se trouve dedans (oui, c’est mal, mais ça arrive).