2010-12-09 4 views

Répondre

7

Etes-vous sûr que le chemin /usr/sbin/sendmail est correct?

Si oui, vérifiez également que les autorisations pour sendmail sont correctement définies.

+0

le chemin est correct, je l'ai vérifié par phpinfo(); Je ne sais pas comment vérifier ou définir des permissions pour sendmail, c'est un serveur d'hébergement partagé. –

+4

Tous les hôtes partagés ne prennent pas en charge sendmail. Créez un ticket de support et demandez à votre hébergeur de le faire. – Caner

+0

ok, merci pour votre aide –

16

J'ai eu la même erreur. Résolu en commentant/en supprimant ceci:

$mail->IsSendmail(); 

Maintenant, cela fonctionne correctement. Je peux envoyer des mails, et je les reçois dans ma boîte de réception.

+0

est cette solution fonctionne vraiment ?? – bhushya

+0

Maintenant, cette méthode est devenue 'isSendMail()', et oui cela a fonctionné pour moi aussi. – Lekhnath

+0

Email n'a pas pu être envoyé. Essayez de le commenter Any Solutions ??? –

1

J'ai eu ce même problème. J'ai passé presque une heure à vérifier les journaux, à vérifier les chemins sendmail et à tester php mail() et sendmail depuis la ligne de commande en vain. Et finalement tout ce que j'ai fait a été redémarré Apache en utilisant apachectl -k graceful et l'univers a été guéri.

+0

Cela a fonctionné pour moi, merci! – jenovachild

0

Je suis d'accord avec le bloc ci-dessus. La fonction mail() par défaut est activée sur tous les serveurs (je crois). Dans mon cas, j'étais capable d'envoyer du code html basique en utilisant la simple fonction mail() mais quand j'ai utilisé PHPMailer pour le faire, j'ai eu cette erreur.

Donc J'ai retiré la partie où elle vérifie, c'est-à-dire IsSendMail() et tout allait bien. Maintenant plus d'exception jeté.

Pour les personnes qui souhaitent utiliser SMTP. Commencez par créer un compte de messagerie sur votre serveur, puis définissez son paramètre dans votre code.

Cheers,

Talha

0

Suppression IsSendmail() vient de créer une autre erreur pour moi, à la fin du fournisseur hôte a dû supprimer safemode sur les paramètres PHP. Il a ensuite travaillé

Modifier par David Burdess

SafeMode ne doit pas être mis sur un serveur en direct! Par exemple, les sites qui fonctionnent sur Joomla ou d'autres solutions CMS ne doivent pas être activés sauf dans un environnement de test.

1

Pour moi, cela fonctionne avec $mail->IsSMTP(). IsSendmail() est à la recherche de sendmail.

0

PHP avec safe_mode activé sur des serveurs partagés (et probablement d'autres) ne parviendra pas à ouvrir /usr/sbin/sendmail (PHPMailer utilise popen)