使用Cake的电子邮件类发送电子邮件时发生内部错误

时间:2013-02-07 23:34:49

标签: php email cakephp gmail

我正在尝试使用Gmail帐户使用CakePHP email library发送电子邮件。

app/Config/email.php我有以下条目:

public $default = array(
    'host' => 'smtp.gmail.com',
    'port' => 465,
    'username' => 'testaccount@gmail.com',
    'password' => 'mypaswsword',
    'transport' => 'Smtp',
    'tls' => true
);

在我的控制器中,我将App::uses('CakeEmail', 'Network/Email');放在我的行动中:

    $email = new CakeEmail();
    $email->from(array('me@example.com' => 'My Site'))
          ->to('you@example.com')
          ->subject('About')
          ->send('My message');

当我加载页面时,我收到Error: An Internal Error Has Occurred.的非常不合情理的错误消息,这并没有给我一些关于出错的线索。我知道Gmail帐户设置是正确的,我正在使用它就像Cake文档告诉我的那样。打印到页面的堆栈跟踪告诉我错误来自CORE\Cake\Network\Email\MailTransport.php中的这一行:

$this->_mail($to, $email->subject(), $message, $headers, $params);

有谁知道这里可能出现什么问题?

编辑:我也尝试使用以下配置:

public $default = array(
    'host' => 'ssl://smtp.gmail.com',
    'port' => 465,
    'username' => 'testaccount@gmail.com',
    'password' => 'mypassword',
    'transport' => 'Smtp'
);

但无济于事。我收到完全相同的错误消息。

1 个答案:

答案 0 :(得分:0)

您是否检查过您的连接并且GMAIL信息是否正确?