2010-02-14 7 views
0

J'ai utilisé avec succès le composant email de CakePHP pour envoyer mon email mais en raison de restrictions, je dois maintenant le configurer pour utiliser un serveur relais smtp et je reçois des résultats étranges.Échec de smtp du composant email CakePHP

Voici mon code:

$this->Email->to = $user['User']['username'].' <'.$user['User']['email'].'>'; 
$this->Email->subject = 'MyWebsite.com – Please confirm your email address'; 
    $this->Email->from = 'MyWebsite.com <[email protected]>'; 
    $this->Email->template = 'user_confirm'; 
    $this->Email->sendAs = 'html'; 
    $this->Email->smtpOptions = array(
     'timeout' => '30', 
     'port' => '25', 
     'host' => 'mail.myrelayserver.com', 
     'username' => 'USERNAME', 
     'password' => 'PASSWORD' 
    ); 
    $this->Email->delivery = 'smtp'; 
    if ($this->Email->send()) { 
     return true; 
    } else { 
     echo $this->Email->smtpError; 
    } 

Maintenant, chaque fois que j'essayer d'envoyer cet e-mail, l'envoi échoue et je reçois le ouput suivant de $ this-> Email-> smtpError:

14.2/Kp; Sun, 14 Feb 2010 19:11:07 GMT 

Des idées?

Répondre

0

Fixé.

Le problème était dû au fait que mon serveur relais smtp n'acceptait pas les connexions de mon serveur cloud. Dès que j'ai ajouté les lignes suivantes au fichier de configuration sendmail, le courrier électronique a commencé à arriver.

MASQUERADE_AS (`mydomain.com ') dnl FEATURE (masquerade_envelope) dnl

J'espère que cela aide quelqu'un d'autre :)

0

"14.2/Kp; Sun, 14 Feb 2010 19:11:07 GMT" fait partie du message d'accueil de sendmail. Peut-être que la connexion est supprimée avant l'autorisation? Avez-vous essayé de vous connecter avec netcat ou telnet à votre relais?

+0

Je viens de connecter avec succès telnet et obtenu la pleine sendmail saluant cette fois-ci, si on dirait que tu avais raison – gomezuk