Nous nous permettons de vous écrire suite à une migration que nous avons réalisé. Suite à la migration du SPIP (Installation de la version du SPIP nu, import de la base de donnée et la connexion des deux) qui a très bien fonctionné, le site est en ligne, fonctionnel, plus rapide qu’avant.
Nous avons une erreur qui a apparue qui est assez embêtante, et ne maitrisant pas le PHP, nous nous demandons d’où cette erreur pourrait venir ?
Salut, il faudrait regarder dans les outils de dev de firefox ce que renvoie la requête sur le JSON qui pose problème. Sinon, le plus simple pour vous serait de passer en discuter en live sur https://irc.spip.net
Il faudrait commencer par voir ce qui génère l’erreur 500 indiquée à la 4e ligne, ça peut se faire en activant le mode « debug » cf Les aides au débuggage de squelettes - SPIP ou en demandant à ton hébergeur d’avoir accès aux logs.
Ok, ça explique tout, le bug a déjà été abordé ici Erreur lors d'upload de logo article - #7 par Mattos => il faut contacter ton hébergeur afin qu’il désactive le mod security ou qu’il adapta sa configuration.
Je viens de desactiver le ModSecurity d’Apache, je verrais plus tard pour le réactiver avec une configuration adaptée.
Je ne sais pas combien de temps il faut attendre après la désactivation, mais j’ai pour l’instant l’erreur, « Erreur Transfert ». Je continue de travailler sur la question auprès des techniciens du serveur. Un grand merci.
Informations supplémentaire, suite aux liens que vous nous avez partagé, nous avons souhaité mettre à jour le SPIP avec spip_loader.php, voici le message que nous voyons :
Est-ce une question d’autorisation ? Un droit d’utilisateur de la base de donnée (PHP) qui n’est pas conforme ?
Je reviens vers vous suite aux résultats suivants :
ModSecurity (activation ou désactivation) ne donne aucun résultats
Le PHP est bien 7.4
Changement de droit du dossier ne fait pas d’effet non plus.
Côté du fournisseur ne peuvent pas nous répondre car c’est plutot de l’ordre de webmaster. De notre nous pouvons faire les modifications nécessaires mais nous n’avons pas de piste pour l’instant.
Je ne vois toujours pas d’où ça peut venir, les deux erreurs (spip_loader et l’erreur de transfert) ont elles la même source de problème…
Pour information à l’installation du SPIP (tout neuf) le spip loader n’arrivait pas à finaliser l’installation (n’arrivait pas à créer de fichier) donc j’ai fait l’import manuellement dans la base pour mettre le site en ligne le plus vite. C’est peut être le même souci…
Nous avions eu ces erreurs sur un vieil hébergement « cloud-vps » d’OVH qui avait été mis en place quelques années avant par une personne depuis partie. Personne dans l’association ne sachant gérer cet espace un ami extérieur nous avait donné un coup de main… avant d’être lui-même trop occupé.
Lors du passage en version 4.0 en test il ne nous était plus possible de charger des images : une correction dans le mod_security avait réglé le pb.
Mais de nouveaux pbs avaient surgi à l’activation de plugins et j’avais eu cet échange au sujet des paramètres du php :
Il faudrait changer a minima la valeur de memory_limit à 256M
(…)
Valeurs recommandées sur Recommended Server Settings - Memory issues | Greatives Tutorial
memory_limit = 256M
post_max_size = 128M
upload_max_filesize = 32M
max_input_vars = 3000
max_execution_time = 300
J’avais pu monter quelques valeurs du php.ini…
Nous avions fini par changer d’hébergement pour aller sur un mutualisé plus adapté à nos capacités de gestion mais où ces valeurs étaient suffisantes :
Que deviennent les logs une fois le mod security désactivé ? « ModSecurity: Warning. Match of "rx ^$" against "FILES_TMPNAMES:file" required. » est toujours là ?
Et quelles sortes de logs regardes tu ?
Il faudrait regarder les logs PHP surtout.
Suite à des nombreux coup de fil et des échanges avec vous voici notre problème résolu. Donc c’était bien l’extension fileinfo du PHP qu’il fallait activer !
Un grand merci au collectif et à chacun et chacune de vous
Je ramène le sujet, car j’ai exactement la même erreur lorsqu’on téléverse des logos : Erreur de transfert. : SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data. L’erreur ne se produit pas pour le portfolio.
Nous venons de migrer de SPIP 4.0 à 4.1.11. Nous avons aussi mise à jour PHP 7.4 à PHP 8.1, nous avons fait activer les modules : zlib, imagik, fileinfo, phar, zip.
Nous avons vérifé les valeurs de php.ini, tout est bon.
J’ai remis PHP 7.4 et l’erreur est encore là.
Je n’ai rien dans les logs du serveurs et je n’ai rien dans la console de Firefox. J’ai changé les droits pour les dossiers local et tmp en 775.
modsecurity n’est pas activé sur notre serveur.
Nous avons évidemment vidé le cache de SPIP et du navigateur.