Cakephp 2.x 电子邮件无法正常工作,为什么会出现此错误

Cakephp 2.x email not working, Why this Error comes

这个问题我思考了很多天。请帮忙。我遵循了 cakephp 文档。但无法解决问题。

Could not send email: unknown
Error: An Internal Error Has Occurred.    

配置如下emai.php

<?php
class EmailConfig {

    public $default = array(
        'transport' => 'Mail',
        'from' => 'developer.support@sevenrocks.in',
        'charset' => 'utf-8',
        'headerCharset' => 'utf-8',
    );

    public $smtp = array(
        'transport' => 'Smtp',
        'from' => array('site@localhost' => 'SevenRocks'),
        'host' => 'ssl://smtp.sevenrocks.in',
        'port' => 465,
        'timeout' => 30,
        'username' => 'developer.support@sevenrocks.in',
        'password' => 'developerofsevenrocks',
        'client' => null,
        'log' => true,
        'charset' => 'utf-8',
        //'headerCharset' => 'utf-8',
    );

}

控制器中的代码如下

$email = new CakeEmail();

$email->emailFormat('html');
$email->from(array($from_email => SITE_NAME));
$email->to($to);
$email->subject($subject);

if ($files)
{
    $email->attachments($files);
}

if ( !$email->send($content) )
{
    return false;
}

首先:要调试 CakePHP 2x 应用程序,请在您的 app/Config/core.php 中搜索 debug 并将其更改为 Configure::write('debug', 2); 以查看完整的错误信息。

其次:某些提供商可能会阻止您直接通过 PHP 发送邮件(默认 邮件配置)。更好的解决方案可能是使用您在 email.php 中提供的 smtp 配置。 要使用您的 smtp 配置,请将您的控制器代码更改为:

$email = new CakeEmail('smtp');

$email->emailFormat('html');
$email->to($to);
$email->subject($subject);

有关详细信息,请参阅 https://book.cakephp.org/2.0/en/core-utility-libraries/email.html#configuration