我无法在本地环境中发送任何电子邮件。
我一直在:
_
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=my-email@gmail.com
MAIL_PASSWORD=*****
注意:令人惊讶的是 - 我的生产服务器中的设置相同,而且效果非常好。
任何提示/建议?
答案 0 :(得分:26)
将我的驱动程序行更新为
MAIL_DRIVER=sendmail
它首次尝试。
最终.env
文件应如下所示
MAIL_DRIVER=sendmail
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=my-email@gmail.com
MAIL_PASSWORD=*****
答案 1 :(得分:2)
对我来说,以下内容与GMAIL合作:
'encryption' => 'ssl',
.ENV
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=xxx@gmail.com
MAIL_PASSWORD=xxx
答案 2 :(得分:0)
1:您必须通过在gmail acc上启用2步验证来允许安全性较低的应用或使用应用密码。 2:禁用计算机上的任何防病毒软件。
答案 3 :(得分:0)
更改.env文件中的设置并在设置smtp之后保留邮件服务器的凭据
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=xxx
MAIL_PASSWORD=xxx
答案 4 :(得分:-1)
Laravel还包含Mailgun和Mandrill HTTP API的驱动程序。这些API通常比SMTP服务器更简单,更快捷。这两个驱动程序都要求将Guzzle 5 HTTP库安装到您的应用程序中。您可以通过将以下行添加到composer.json文件中来将Guzzle 5添加到项目中:
"guzzlehttp/guzzle": "~5.0"
composer update
Mailgun驱动程序
要使用Mailgun驱动程序,请在config / mail.php配置文件中将驱动程序选项设置为mailgun。接下来,创建一个config / services.php配置文件(如果项目尚不存在)。确认它包含以下选项:
'mailgun' => [
'domain' => 'your-mailgun-domain',
'secret' => 'your-mailgun-key',
],
Mandrill驱动程序
要使用Mandrill驱动程序,请在config / mail.php配置文件中将驱动程序选项设置为mandrill。接下来,创建一个config / services.php配置文件(如果项目尚不存在)。确认它包含以下选项:
'mandrill' => [
'secret' => 'your-mandrill-key',
],
基本用法
The Mail::send method may be used to send an e-mail message:
Mail::send('emails.welcome', ['key' => 'value'], function($message)
{
$message->to('foo@example.com', 'John Smith')->subject('Welcome!');
});