CakeDC用户插件 - 我无法发送电子邮件

时间:2012-10-03 21:35:06

标签: php email cakephp smtp cakedc

我为这个问题的漫无边际道歉,请耐心等待我,我将提供所有额外的信息,以阻止我因为看起来非常直接的事情而失败而生气...

我刚刚安装了CakePHP 2.2,我做的第一件事就是添加cakeDC用户插件。除了在用户注册时发送电子邮件验证之外,它一切正常。

我已经在email.php中尝试了很多不同的组合,现在我已经完全搞定了我的短裤。无论我做什么,当发送验证邮件时,我得到的只是:由于目标机器主动拒绝它,因此无法建立连接。

我的email.php目前看起来像这样:

class EmailConfig {

public $default = array(
    'transport' => 'Smtp',
    'from' => 'blah@gmail.com',
    //'charset' => 'utf-8',
    //'headerCharset' => 'utf-8',
);

public $smtp = array(
    'transport' => 'Smtp',
    'from' => array('Blah <blah@gmail.com>' => 'Chimp'),
    'host' => 'ssl://smtp.gmail.com',
    'port' => 465,  
    'timeout' => 30,
    'username' => 'blah@gmail.com',
    'password' => 'secret',
    'client' => null,
    'log' => false,
    //'charset' => 'utf-8',
    //'headerCharset' => 'utf-8',
);

public $fast = array(
    'from' => 'blah@blah.net',
    'sender' => null,
    'to' => null,
    'cc' => null,
    'bcc' => null,
    'replyTo' => null,
    'readReceipt' => null,
    'returnPath' => null,
    'messageId' => true,
    'subject' => null,
    'message' => null,
    'headers' => null,
    'viewRender' => null,
    'template' => false,
    'layout' => false,
    'viewVars' => null,
    'attachments' => null,
    'emailFormat' => null,
    'transport' => 'Smtp',
    'host' => 'blah.net',
    'port' => 25,
    'timeout' => 30,
    'username' => 'user',
    'password' => 'secret',
    'client' => null,
    'log' => true,
    //'charset' => 'utf-8',
    //'headerCharset' => 'utf-8',
);

}

如何让cakeDC用户插件发送非SMTP电子邮件?或者我使用我的Gmail详细信息?但是,如果我必须沿着SMTP路线走下去,上面有什么问题?

其他信息:我正在使用最新版本的XAMPP,我的PHP安装已启用ssl。

1 个答案:

答案 0 :(得分:1)

如果您在Windows上,建议您使用带有Gmail详细信息的SMTP,是的。 不要忘记激活PHP的openSSL扩展,以便能够通过SSL发送邮件。

定义您的$ email var,如下所示:

  

App :: uses('CakeEmail','Network / Email');

     

$ email = new CakeEmail('smtp');

看看它是否有效