无法使用gmail smtp从localhost发送电子邮件?

时间:2012-05-18 07:06:32

标签: php email cakephp smtp gmail

我第一次看着cakephp电子邮件组件。我从我的localhost发送这样的电子邮件:

    $this->Email->smtpOptions = array(  'port'=>'465',
                                        'timeout'=>'30',
                                        'host'=>'smtp.gmail.com',
                                        'username'=>'mygmail@gmail.com',
                                        'password'=>'mygmailpassword'
                                     );


    $this->Email->delivery = 'smtp';
    $this->Email->from = "mygmail@gmail.com";
    $this->Email->to = "yourgmail@gmail.com";
    $this->Email->subject = "Subject";
    $this->Email->sendAs = 'html';
    $this->Email->lineLength = 255;
    $body = "<h1>This is body</h1>";
    $this->Email->send( $body );

它没有发送任何电子邮件,甚至没有显示任何错误。

有什么遗失吗?

由于

2 个答案:

答案 0 :(得分:2)

如果我没记错的话,Gmail的SMTP服务器需要SSL。

尝试

$this->Email->smtpOptions = array(
    'port'=>'465', 
    'timeout'=>'30',
    'host' => 'ssl://smtp.gmail.com',
    'username'=>'your_username@gmail.com',
    'password'=>'your_gmail_password',
);

答案 1 :(得分:2)

主持人应为:ssl://smtp.gmail.com