Problème d'envoi de mails Wordpress suite passage version PHP 7.4

Hunt
Invité n'ayant pas de compte PHPfrance

09 déc. 2019, 22:01

Bonjour,
Je ne sais si je suis au bon endroit, mais je tente le coup ici... :)
J'essaie de passer différents sites Wordpress dont j'ai la gestion sous la dernière version de PHP 7.4, et chaque fois cela casse tout le système d'envoi des mails, donc impossible d'envoyer un formulaire et plus aucune notification opérante...
Je tourne un peu en rond, j'ai testé différentes choses, désactivation des plugins et autres, mais cela le fait sur beaucoup de sites différents, avec des thèmes et plugins qui n'ont parfois rien à voir...
Du coup je ne sais plus trop quoi faire, mis à part de repasser en 7.3 évidemment pour l'heure, mais j'aimerais bien "comprendre" surtout... :D
Je vous remercie pour votre aide,
Bien cordialement

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

10 déc. 2019, 08:23

PHP 7.4 est sorti il y a 10 jours.
Si tu n'as pas la maitrise de ton code (ce qui est le cas si tu utilises Wordpress + des themes et extensions tiers), alors il faut que tu attendes que ces extensions se mettent à jour. En général ça ne sert à rien et c'est risqué de migrer sur une nouvelle version qui vient juste de sortir.

Si tu veux quand même migrer sur PHP 7.4 alors il faut que tu lises chaque message d'erreur pour comprendre le problème et le corriger, au risque que tes corrections ne soient pas compatibles avec les futures mises à jour des extensions/thèmes que tu as installé, donc généralement déconseillé.
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 6 Messages

10 déc. 2019, 08:53

Merci beaucoup pour ta réponse... ;-)
En fait c'est plus pour tester cette version que pour opérer une migration forcée à tout prix...
Ce qui m'étonne c'est que je retrouve ce problème sur tous les sites que j'ai pu tester, indépendamment des thèmes ou plugins employés, j'ai même testé donc sur une installation "vierge"...
Comment puis je savoir dans ce cas à quels endroits ce trouvent les problèmes ? pour que je sache au moins quelles mises à jour je dois surveiller...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

10 déc. 2019, 12:50

En regardant les messages d'erreurs/les logs
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 6 Messages

13 déc. 2019, 17:25

Je comprends pas vraiment ce qui est dit dedans....... Pourrais tu me préciser dans quel log chercher exactement et ce que je devrais trouver plus directement ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

13 déc. 2019, 19:54

Dans le fichier log d'erreur d'Apache/PHP, fais un phpinfo() pour savoir ou le trouver.
Tu vas y trouver les messages d'erreurs qui provoquent les dysfonctionnements que tu observes.
Je comprends pas vraiment ce qui est dit dedans.......
Du coup, est-ce vraiment utile de vouloir tester une version de PHP avant que les applis que tu utilisent soient compatibles avec ?
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 6 Messages

14 déc. 2019, 11:21

Merci beaucoup @rthur... :-)

"Du coup, est-ce vraiment utile de vouloir tester une version de PHP avant que les applis que tu utilisent soient compatibles avec ?"

Disons que ce n'est pas un travail impératif c'est vrai...
Mais ce qui m'étonne c'est que ce type de problèmes se reproduit systématiquement sur différentes configurations... Donc cela attise ma curiosité quand même, de savoir, est ce vraiment dû à une application déjà ? est ce que ce ne serait pas par exemple une mauvaise configuration du htaccess ou de wp-config ? ou autres ? certaines incompatibilités entre certains plugins avec le noyau de Wordpress, certains de mes paramètrages, je ne sais pas...
Je pense qu'en enquêtant sur ce genre de problème d'une manière "préventive", je serai globalement moins bête au final... ;-)

J'ai fait le phpinfo() et cela renvoie énormément d'informations liées aux erreurs...

display_errors Off Off
display_startup_errors Off Off
error_append_string no value no value
error_log error_log error_log
error_prepend_string no value no value
error_reporting 32767 32767
html_errors On On
ignore_repeated_errors Off Off
log_errors On On
log_errors_max_len 1024 1024
track_errors Off Off
xmlrpc_error_number 0 0
xmlrpc_errors Off Off
intl.error_level 0 0

Je suppose que je dois peut être porter certains de ces paramètres en "on" ?
Car là le "error_log" me parait très peu bavard...
Enormément de :

[12-Dec-2019 17:45:59 UTC] PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback, function '_return_false' not found or invalid function name in /home/xxxxxxxxxxxxxxxx/public_html/wp-includes/class-wp-hook.php on line 288

mais qui ne semblent même pas liés à mon problème, il y en a quasi tout le temps....

Petit nouveau ! | 6 Messages

20 déc. 2019, 11:44

Pour ceux qui seraient intéressés, il y a une discussion qui évoque ce type de problème qui seraient liés à un bug de la version PHP 7.4 :

https://wordpress.org/support/topic/can ... g-php-7-4/

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

21 déc. 2019, 00:43

Pour ceux qui seraient intéressés, il y a une discussion qui évoque ce type de problème qui seraient liés à un bug de la version PHP 7.4 :
https://wordpress.org/support/topic/can ... g-php-7-4/
Merci pour le partage, par contre il faut bien lire ce qu'il y a marqué dans ce sujet :arrow: ce n'est pas un bug de PHP7.4.

C'est un bug d'un distributeur d'OS (CloudLinux) qui n'a pas intégré la bonne version d'un module (PCRE) et ils ont corrigé cette erreur hier :
https://cloudlinux.com/cloudlinux-os-bl ... ated-1-172

PHP avait bien fait l'évolution de ce module le 25 mai 2019 :
https://github.com/php/php-src/commits/ ... ib/pcre2.h

Donc c'est un problème d'hébergeur.
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 6 Messages

21 déc. 2019, 11:10

Oui effectivement j'ai fait un raccourci rapide :)

C'est une piste qui peut expliquer peut être potentiellement les problèmes liés au passage à la version php 7.4 que je rencontre...
Sur mon cpanel, au changement de version, moi je ne vois aucune module PCRE ceci dit, est ce que c'est l'hébergeur qui doit le gérer de son coté ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

21 déc. 2019, 19:37

est ce que c'est l'hébergeur qui doit le gérer de son coté ?
Ça dépend de ton contrat avec ton hébergeur ! :-D
Qui fait les installations et mises à jour de ton serveur notamment pour tout ce qui est OS, Apache, PHP ?
Quoiqu'il en soit pose la question à ton hébergeur, tu le payes pour ça (ou s'il ne fait pas l'infogérance, alors il te le dira)
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 6 Messages

22 déc. 2019, 17:39

Tout ce qui est serveur je ne m'en occupe pas dans cet hébergement, quelques modules sont activables ou désactivables, mais pas celui là....
Je leur avais déjà posé la question sur les problèmes que je rencontrais, pour eux, aucun souci... Ils m'ont simplement fait une réponse un peu comme la tienne : la version est très fraiche, attendre un peu...