【问题标题】:cakephp emails not workingcakephp电子邮件不起作用
【发布时间】:2011-05-18 17:41:32
【问题描述】:

我的问题是:

在我拥有的控制器中:

var $components = array('Email');

发送邮件的方法如下:

function send_emails() {
  $this->Email->from    = 'Somebody <somebody@example.com>';
  $this->Email->to      = 'Somebody Else <myspamplace@centrum.cz>';
  $this->Email->subject = 'Test';
  $this->Email->send('Hello message body!');
 }

我正在使用 Cake 1.3 并使用 Apache 2.2.11 和 PHP5 在 localhost 上运行它。你们知道为什么它不起作用吗?

当我放

$this->Email->delivery = 'debug';

在代码中,它显示了电子邮件信息,看起来一切正常。

您有什么想法可能是它不发送电子邮件的原因吗?

【问题讨论】:

    标签: email cakephp cakephp-1.3


    【解决方案1】:

    如果您在远程服务器(即托管服务器)上进行开发,那么它应该可以工作,因为它会接收默认电子邮件。

    你不是,你必须给邮件组件一些电子邮件功能。例如,您可以通过输入您的 gmail(或其他)smtp 详细信息(即服务器、登录名、密码)来做到这一点。

       /* SMTP Options for GMAIL */
       $this->Email->smtpOptions = array(
            'port'=>'465', 
            'timeout'=>'30',
            'auth' => true,
            'host' => 'ssl://smtp.gmail.com',
            'username'=>'your_username@gmail.com',
            'password'=>'your_gmail_password',
       );
    
        /* Set delivery method */
        $this->Email->delivery = 'smtp';
    

    http://book.cakephp.org/view/1290/Sending-A-Message-Using-SMTP

    如果您不确定要使用什么凭据,请在您的电子邮件提供商的帮助或常见问题解答中查找。通常可以通过搜索如何设置 Outlook 或 Thunderbird 来找到它。

    【讨论】:

      【解决方案2】:

      您是从 Windows 服务器发送的吗?如果是这样,您是否在 php ini 中正确设置了 MTA?可以使用 mail() 函数发送邮件吗?

      如果您在 Windows 上并且需要 MTA,hMail 非常适合开发,请注意,许多主机会拒绝来自本地计算机的垃圾邮件,因此不要在没有 MX 记录、域密钥等的情况下在生产环境中使用。

      【讨论】:

        【解决方案3】:

        您需要一个 SMTP 服务器来发送电子邮件。如果您尝试从本地主机发送它,有两个不错的选择:

        • FreeSMTP:一个基于 Windows 的工具,让您的计算机像 SMTP 服务器一样工作
        • Gmail:您可以使用您的 Gmail 地址进行测试。

        您需要按照send email using CakePHP through SMTP 的说明进行操作。您还可以修改 php.ini 设置以反映新设置。

        【讨论】:

          【解决方案4】:

          我遇到了同样的问题,我忘记在我的 xampp 服务器上启用 ssl,因此只需在 php.ini 文件中添加(或取消注释)extension=php_openssl.dll 行。希望对您有所帮助。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-03-26
            • 1970-01-01
            • 1970-01-01
            • 2017-03-27
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多