2009-06-03 5 views
0

J'ai un script qui utilise la fonction PHP mail() pour envoyer des e-mails:PHP mail() résultats dans un fichier "dead.letter"

courrier ("[email protected]", "Objet", " Message");

Tout a bien fonctionné jusqu'à hier. Maintenant, les mails finissent dans un fichier de lettres mortes ou ne sont tout simplement pas envoyés.

Quelle pourrait en être la raison? Des conseils sur comment déboguer un tel code?

+0

Nous vous remercions de vos suggestions. Il s'est vraiment avéré être un problème avec la mauvaise configuration du serveur. –

Répondre

0

Lorsque sendmail ne peut pas envoyer de courrier, il enregistre le message dans un fichier nommé "dead.letter". Votre sendmail est probablement mal configuré ou ne fonctionne pas du tout. Editer: vous pouvez inspecter/var/log/maillog pour vérifier les informations de débogage de sendmail.

1

Si c'est la même chose pour vous, je suggère d'utiliser quelque chose comme SwiftMailer au lieu de la fonction mail() intégrée de php.

De toute façon, votre MTA vous donne-t-il une raison pour la lettre morte? Vous trouverez peut-être des indices dans le fichier/var/log/maillog (en fonction de la configuration de votre serveur/MTA).