Spip4 et PHP8 problème SQL

Peut-on faire tourner Spip4 sur PHP8?

Mon site spip fonctionne sous php7.4 mysql Ver 15.1 Distrib 10.3.34-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

mais si je passe en PHP Version 8.0.24 je reçois un message d’erreur dans spip.log

spip_connect: echec connexion ou serveur 0 mal defini dans ‹ …/config/connect.php ›.

idem si je vais dans /ecrire au lieu du site public

quand je reviens à PHP7.4 tout marche à nouveau, mais cette version est en fin de vie le 28 novembre prochain :neutral_face:

Il te faut une 4.1

spip 4.15, la dernière version je pense non?

A tout hasard, vérifier que les extensions PHP : sodium, Zlib, Zip et Phar sont bien activées (comme précisé sur cette page : SPIP 4.1 - SPIP)

1 « J'aime »

Ah merci :slightly_smiling_face:, j’ai pu faire sudo apt install php-sodium et php8.0-common
Mais pour zlib et phar il ne trouve rien.
Connaissez-vous un outil/plugin/xxx qui puisse me lister les modules exacts que je devrais installer ou au moins ceux qui manquent à mon installation, de façon à pouvoir les trouver sans tâtonner

j’ai ajouté lesdits modules, voici le résultat de
php -m
[PHP Modules]
bcmath bz2 calendar Core ctype curl date dom exif FFI fileinfo filter ftp gd gettext hash iconv igbinary imagick imap intl json libxml mbstring memcached msgpack mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql Phar posix readline Reflection session shmop SimpleXML soap sockets sodium SPL standard sysvmsg sysvsem sysvshm tokenizer xml xmlreader xmlrpc xmlwriter xsl Zend OPcache zip zlib
Hélas spip.log contient toujours ces mêmes messages

Pub:HS: Echec connexion serveur mysql : host[localhost] port[3306] login[xxxxx] base[spip]
Pub:!INFO: spip_connect: fichier de connexion 'config/connect.php' OK.
Pub:HS: spip_connect: echec connexion ou serveur 0 mal defini dans 'config/connect.php'.
Pub:HS: Echec : tmp/mysql.3a91b151.out recent. Pas de tentative de connexion
Pub:!INFO: spip_connect: fichier de connexion 'config/connect.php' OK.
Pub:HS: spip_connect: echec connexion ou serveur 0 mal defini dans 'config/connect.php'.
Pub:ERREUR: Le serveur '' version 1 n'a pas 'showbase'

Là ça dépasse mes compétences, si c’est un pb avec PHP 8, il faut comparer la config de PHP 8 avec celle de PHP 7.4 et voir ce qui manque

Résolu :slightly_smiling_face:

Je suis repartie d’un backup puis avant d’installer apache8 et fpm, j’ai d’abord ajouté

sudo locale-gen en_US.UTF-8

ensuite apache2, fpm et configuré fpm avec 7.4 ou 8.1 selon les sites

<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/**php7.4-fpm.sock**|fcgi://localhost"
</FilesMatch>

et le site spip4.15 se porte comme un charme en php7.4 comme en 8.1

ouf :slightly_smiling_face:

2 « J'aime »