期望的响应代码220但是得到代码“”,其中消息“在拉里维尔 [英] Expected response code 220 but got code "", with message "" in Laravel
问题描述
app / config / mail.php
文件设置。 'driver'=> 'sendmail',
'host'=> 'smtp.gmail.com',
'port'=> 587,
'from'=> array('address'=>'email@gmail.com','name'=>'MyName'),
'encryption'=> 'tls',
'username'=> 'myUsername',
'password'=> 密码,
'sendmail'=> '/ usr / sbin / sendmail -bs',
'pretend'=>假,
控制器邮件方法
//发送邮件
Mail :: send('sendMail',array('key'=>'value'),function($ message)
{
$ message-> to('EmailId@hotmail.com','Sender Name') - > subject('Welcome!');
});
当我运行代码时,会给我以下错误信息:
Swift_TransportException
预期的响应代码220,但获得代码,带有
我已经创建了一个 SendMail.php
文件,其中包含一些数据。
如何解决此错误讯息?
不为您用于发送电子邮件
的 gmail
帐户启用两步验证。首先,启用两步验证
,您可以找到大量资源来启用两步验证。启用后,您必须创建一个应用程序密码
。并在您的 .env
文件中使用应用程序密码
。完成后,您的 .env
文件将看起来像。
MAIL_DRIVER = smtp
MAIL_HOST = smtp.gmail.com
MAIL_PORT = 587
MAIL_USERNAME =<<您的电子邮件地址>>
MAIL_PASSWORD =<< app password>>
MAIL_ENCRYPTION = tls
和您的 mail.php
<?php
return [
'driver'= > env('MAIL_DRIVER','smtp'),
'host'=> env('MAIL_HOST','smtp.gmail.com'),
'port'=> env('MAIL_PORT',587),
'from'=> ['address'=> '<< your email>>','name'=> '<< any name>>'],
'encryption'=> env('MAIL_ENCRYPTION','tls'),
'username'=> env('MAIL_USERNAME'),
'password'=> env('MAIL_PASSWORD'),
'sendmail'=> '/ usr / sbin / sendmail -bs',
'pretend'=>假,
];
执行此操作后,运行 php artisan config:cache
和 php artisan config:clear
,然后检查,电子邮件应该工作。
I am using Laravel Mail function to send email. The following is my app/config/mail.php
file settings.
'driver' => 'sendmail',
'host' => 'smtp.gmail.com',
'port' => 587,
'from' => array('address' => 'email@gmail.com', 'name' => 'MyName'),
'encryption' => 'tls',
'username' => 'myUsername',
'password' => "password",
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
Controller Mail Method
//Send Mail
Mail::send('sendMail', array('key' => 'value'), function($message)
{
$message->to('EmailId@hotmail.com', 'Sender Name')->subject('Welcome!');
});
When I run the code it gives me following error message:
Swift_TransportException
Expected response code 220 but got code "", with message ""
I have created a SendMail.php
file in view which contains some data.
How do I resolve this error message?
This problem can generally occur when you do not enable two step verification for the gmail
account you are using to send an email
. So first, enable two step verification
, you can find plenty of resources for enabling two step verification. After you enable it, then you have to create an app password
. And use the app password
in your .env
file. When you are done with it, your .env
file will look something like.
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=<<your email address>>
MAIL_PASSWORD=<<app password>>
MAIL_ENCRYPTION=tls
and your mail.php
<?php
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.gmail.com'),
'port' => env('MAIL_PORT', 587),
'from' => ['address' => '<<your email>>', 'name' => '<<any name>>'],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,
];
After doing so, run php artisan config:cache
and php artisan config:clear
, then check, email should work.
这篇关于期望的响应代码220但是得到代码“”,其中消息“在拉里维尔的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!