2010-09-11 8 views
6

S'il vous plaît dites-moi ce que je fais mal. Je vous envoie un e-mail en utilisant la classe Zend_Mail comme ceci:Zend_Mail envoyé email est traité comme SPAM

$message = <<<STR 
You have a new invoice! 

Sign in to your clientarea to see it. 

Best regards, 

Company name 
STR; 

$mail = new Zend_Mail(); 
$mail->setBodyText($message); 
$mail->setFrom('[email protected]', 'Company.com'); 
$mail->addTo('[email protected]', 'Client Name'); 
$mail->setSubject('You have a new invoice!'); 
$mail->send(); 

Il est reçu comme spam bien. Il existe d'autres applications telles que Webmin sur mon serveur et les e-mails qu'elles envoient ne sont pas traités comme des SPAM.

+1

duplication possible de [PHP: Comment éviter qu'un e-mail généré par le système ne soit envoyé dans le spam?] (Http://stackoverflow.com/questions/2800898/phphow-to-avoid-a-system-generated-email-going- into-spam) –

+0

Voir aussi les questions liées dans cette copie –

+0

L'ajout de l'en-tête Reply-To a résolu le problème. –

Répondre

9

J'ai résolu ce problème en ajoutant ces lignes:

$mail->setReplyTo('[email protected]', 'Company'); 
$mail->addHeader('MIME-Version', '1.0'); 
$mail->addHeader('Content-Transfer-Encoding', '8bit'); 
$mail->addHeader('X-Mailer:', 'PHP/'.phpversion()); 

La ligne critique semble être l'ajout d'en-tête Répondre. Sans cela, ça irait toujours au SPAM. Une fois que j'ai défini l'en-tête Reply-To, les clients de messagerie ont cessé de le traiter comme spam.

+0

De quoi l'en-tête 'from' est-il défini? –

+0

[email protected], répondez à [email protected] –

+0

n'hésitez pas à accepter votre propre réponse comme la bonne! – chelmertz

Questions connexes