MyBB.support, le portail francophone de MyBB

Version complète : Erreur lors d'envoi de mails
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2 3
(01-07-2023, 19:49)exdiogene a écrit : [ -> ]Je viens de poster ce bug de longue date sur MyBB.com ici :

https://community.mybb.com/thread-238680.html

Espérons qu'ils trouverons une bonne solution pour palier à ce problème... Tongue

Ce que je trouve dingue, si le problème existe depuis un moment, c'est qu'en l'état, les forums créés ne sont quasiment pas utilisables puisqu'au aucun mails ne peut-être envoyé.
En effet, les mails qu'un user reçoit pour valider son adresse par exemple, ne sont pas envoyés. C'est également le cas des emails qu'un user qui a été créé par un administrateur devrait recevoir pour l'aviser que son compte est créé.

Autant dire que ça limite la création d'abonnés ;-)
@Tjee :

Je n'ai travaillé pour le moment qu'à la localisation de l'avertissement signalé au début du sujet.

Je vais maintenant vérifié la cause du problème de courriel...
Bon j'ai localisé la cause principale du non-envoi de courriel, c'est parce que les paramètres ne sont pas réacheminés à la fonction d'envoi du courriel et PHP répond que le courriel est envoyé, lorsqu'il ne l'est pas en réalité.

Cela semble un "bug" non résolu de MyBB, qui eux recommande d'utiliser le mode SMTP pour l'envoi de courriel. Ce qui ne me semble pas une bonne idée... Sad

Voir le Sujet suivant qui date du 20 mars 2023 :

https://community.mybb.com/thread-237922.html?highlight=mail

Je vais tenter de remonter dans le code pour découvrir où se perdent les paramètres d'envoi...
Il est très difficile de travailler en débogage sur votre site car les fichiers de PHP sont en cache sur votre serveur...

Il faut plusieurs essais et du temps pour que la mise à jour d'un fichier soit fonctionnelle après son envoi en FTP.

Finalement je peux vous donner plus de détails sur les problèmes d'envois de courriel.

Il y a deux variables qui posent des problèmes avec les envois, je les ai supprimé temporairement et tout semble fonctionner maintenant.

Une de ces erreurs est causée par du mauvais code de MyBB qui lit une information dans le fichier de configuration de PHP et ne trouvant pas l'information donne une mauvaise valeur par défaut à la variable "$safemode". Ce qui cause une mauvaise utilisation de la variable "$this->additional_parameters" dans l'appel pour envoyer un courriel.

L'autre erreur n'est pas entièrement déterminée, mais le contenu de la variable "$this->headers" semble incorrect et ne peut donc pas être intégré au courriel.

Je cesse mon investigation ici pour le moment, le problème pouvant provenir de la version du PHP utilisé...

Je vous encourage à faire des tests pour déterminer si tous les problèmes ont disparus et qu'aucun autre ne s'est ajouté!
J'ai publié le "bug" sur le site de MyBB.com
Tout d'abord un grand merci.
Désolé pour le cache, je n'ai rien paramétré de particulier pour cela et ne sais pas ou l'inactiver.

J'espère que mon cas, et tout ce travail d'investigation, servira à d'autres membres qui rencontreraient ce soucis.
J'ai reçu des mails du forum de test, donc en effet, le problème semble résolu.

Est-il possible d'avoir les modifications apportées car je devrais les reporter sur le forum destiné à la production si je veux utiliser myBB pour son développement.
Les modifications nécessaires appliquées sur le forum de test, ne permettent pas de savoir qui est l'expéditeur des courriels.

Ce qui ne serait pas très utile sur un forum en production, je suggère d'attendre la réponse de MyBB.com. Je tenterai d'inscrire manuellement l'expéditeur dans le code si la réponse de MyBB.com tarde et vous donnerai les modifications à faire...
J'ai finalement localisé la ligne causant l'erreur dans le code de MyBB, elle est dans le fichier : "/inc/mailhandlers/php.php" :

Code :
if($this->sendmail)
{
$this->headers = str_replace("\r\n", "\n", $this->headers);
$this->message = str_replace("\r\n", "\n", $this->message);
$this->delimiter = "\n";
}

Il faut mettre cette ligne en commentaire :

Code :
//commentaire $this->headers = str_replace("\r\n", "\n", $this->headers);

Selon moi cela règlera tous les problèmes d'envoi de courriel...

L'information est transférée à MyBB.com, vous pouvez faire le correctif sur votre forum de production entretemps... Cool
Merci exdiogene pour tous ces efforts.
J'ai vu ta modification dans le server de test ; j'ai également vu que des mass mails étaient effectivement partis. donc ça doit pouvoir fonctionner.
Malheureusement, je ne parviens toujours pas a en envoyer d'autre (y compris via le serveur de test)
J'ai également effectué la modification sur le serveur de prod, mais sans succès ...

Je dois dire que je ne suis pas rassuré pour démarrer un forum sur ces bases :-(
Lorsque l'on envoi des courriels de masse, il y a un délai avant l'envoi. Mais il semble que le délai d'envoi n'est pas respecté!

Je suis allé dans le Panneau d,'Administration, section "Tools &Maintenance ->Task Manager" et j'ai cliqué sur "Run Task" de la section "Mass Mail" et tous les courriels furent envoyés...

Mais, la modification ne semble pas avoir été faites dans le fichier php.php!

Pourtant je la vois dans mon client FTP, est-ce un autre forum qui est utilisé?
Oui, il y a deux forums, celui de test sur lequel tu as les accès et celui pour la futur prod.
Ca ne fonctionnait pas car je n'avais pas forcé le lancement de la tâche.

Donc au final, après modification du fichier php.php cela fonctionne bien mieux.
Les utilisateurs qui créent un compte reçoivent le mail de validation de leur email. Et ça résout un problème absolument bloquant sur l'utilisation de myBB.

Il reste ce soucis de time out qui oblige à lancer la tâche d'envoi de mails collectifs manuellement via "Tools &Maintenance ->Task Manager" mais c'est moins bloquant et je vais faire des tests en modifiant les paramètres du cron de la tâche.
J'ai constaté que le "mass mail" occasionne un autre souci avec les courriels suivant le premier.


Pour corriger cela il faut mettre une deuxième ligne en commentaire dans la même section :


Code PHP :
//commentaire $this->delimiter = "\n"; 

Pour le problème d'automation des tâches, cela fonctionnera lorsque le forum sera en ligne et que des gens y accéderont.

Sinon il est possible de créer une tâche Cron avec le Panneau de Contrôle du serveur de votre site.
Merci pour tout exdiogene.
Tout fonctionne et ça remet myBB dans la course au choix entre phpBB et myBB
@exdiogene : 2 messages postés sur mybb.com, entre 40 et 100 vues, AUCUNE RÉPONSE !!!
Belle réactivité... Wink
84 vues pour le dernier message et 101 vues pour le précédent.

Vu que je n'ai pas reçu de réponse en 4 jours, j'ai posté le bug ce matin sur github ici :

https://github.com/mybb/mybb/issues/4734

Encore là aucune réponse... Sad
:-( Pas très rassurant
Non pas vraiment, les derniers bénévoles de MyBB.com, ne sont pas trop "réactifs", même après 1 semaine d'attente. Mais cela semble être le lot de la dernière génération dans tous les domaines... Sad

J'aimerais vous signaler que votre hébergement pour votre site n'est pas trop réactif lui non-plus. Lorsque je rafraîchi la page cela prend souvent plusieurs secondes avant que la page soit complétée pour la page d'accueil du site de céramique. De plus il est impossible de faire une requête Ping ou NSLookup vers votre serveur de site à partir du Canada pour mesurer le temps de réponse :

Code :
Envoi d’une requête 'ping' sur ***VotreNomDeSite***.fr [109.234.164.147] avec 32 octets de données :

Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.

Statistiques Ping pour 109.234.164.147:
    Paquets : envoyés = 4, reçus = 0, perdus = 4 (perte 100%),


Code :
Réponse ne faisant pas autorité :

DNS request timed out.
    timeout was 2 seconds.
Nom :    ***VotreNomDeSite***.fr
Address:  109.234.164.147
Mais il faut dire que les sites en WordPress sont généralement long à charger dans les navigateurs web, mais le serveur que vous utilisez semble beaucoup plus lent que le miens... Wink
Vu de France, c'est pareil :

Code :
Envoi d’une requête 'ping' sur **********.fr [109.234.164.147] avec 32 octets de données :
Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.
Délai d’attente de la demande dépassé.
Edit : sans doute s’agit-il d'un hébergement mutualisé auquel cas le ping n'est pas forcément révélateur, non ?
Même les hébergements mutualisés répondent au Ping en général, surtout au interrogation avec NSLookup!

Je ne comprend pas cette situation, mais l'hébergeur est aussi excessivement lent, lorsque je rafraichi la page principale de l'atelier de céramique qui est sous WordPress cela prend entre 5 et 15 secondes avant que la page soit entièrement affichée ici...

Ce n'est pas un hébergement traditionnel et il est très surchargé ou encore il est situé au domicile du propriétaire du site!
Alors je valide vos commentaires ... c'est lent !
Non ce n'est pas un hébergement au domicile mais bien chez un hébergeur à qui je vais évoquer ces soucis. Il est plutôt bien noté et réactif à mes sollicitations donc ça devrait s'arranger ;-)`
Ceci dit, je ne pense pas que ce soit la raison de mes problèmes de mails.
Je tente de régler les choses au fur et à mesure :-)
Pages : 1 2 3
 Utilitaire de traduction fourni par Regentronique