在Laravel 5中发送电子邮件的最佳方式是什么?

时间:2015-05-22 12:42:24

标签: php email laravel laravel-4 laravel-5

我在Laravel 5应用程序中发送电子邮件时遇到问题。

这是我的邮件功能

电子邮件= >>> '/'.join(s) '/folder1/folder2/folder3/folder4/folder5/exp-*'

test@gmail.com

我一直在

enter image description here

更新

Mail::send('emails.activation', array( 'username'=>$user->username, 'name'=>$user->name, 'code'=>$user->code, 'email'=>$user->email ), function($message){ $message->from(env('MAIL_USERNAME'),'Site'); $message->to('email', 'name' )->subject('Site Activation '); }); 文件中的邮件配置

.env

新错误

enter image description here

我对发生的事情非常好奇。 我做错了什么?

2 个答案:

答案 0 :(得分:1)

这意味着电子邮件地址字段中存在错误,例如From,Sender或Reply-To字段。

Swift Mailer严格遵循RFC标准,以避免电子邮件被垃圾邮件检查工具捕获。

test@gmail.com看起来不像普通的电子邮件地址,甚至不存在。

尝试使用其他电子邮件地址示例发送给我

Mail::send('emails.activation', array(

  'username'=>$user->username,
  'name'=>$user->name,
  'code'=>$user->code,
  'email'=>$user->email

  ),
function($message){
  $message->from('siteEmailaddress@domain.com'),'Site');
  $message->to('avalidEmailaddress@domain.com', 'name' )->subject('Site Activation ');

});

此外,如果您希望在下面使用gmail作为SMTP服务器:

'driver' => 'smtp',
'host' => 'smtp.gmail.com',
'port' => 465,
'encryption' => 'ssl',
'username' => 'your-email@gmail.com',
'password' => 'your-password',

EDITED

注意:MAIL_USERNAME必须是您的@gmail.com电子邮件地址,例如myname@gmail.com否则你将无法使用host smtp.gmail.com error

建立Connection

如果您无法解决此异常,请转到打开app \ Exceptions \ handler.php

在内部渲染方法中添加:

    /**
     * Render an exception into an HTTP response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Exception  $e
     * @return \Illuminate\Http\Response
     */
    public function render($request, Exception $e)
    {


        if ($e instanceof Swift_RfcComplianceException){
            //redirect to form
            //You can also delete the user account here if already created or do other stuffs
            return redirect($request->fullUrl())->with('error',"We have issue sending you an email");

        }


        .......

    }

注意:请记得在handler.php

的顶部添加use Swift_RfcComplianceException;

答案 1 :(得分:1)

它看起来像来自'地址无效,您目前使用的是env来电,而不知道它返回的是100%。

尝试将from地址更改为真实的电子邮件地址以进行测试。