2017-07-30 105 views
0

我想从我的laravel项目发送邮件从本地主机的Gmail邮件。无法从本地主机发送Laravel和Gmail邮件

这是我的.ENV文件

MAIL_DRIVER=smtp  
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587  
[email protected] 
MAIL_PASSWORD=password 
MAIL_ENCRYPTION=tls 

这是我的配置/ mail.php文件

'driver' => env('MAIL_DRIVER', 'smtp'), 
    'host' => env('MAIL_HOST', 'smtp.gmail.com'), 
    'port' => env('MAIL_PORT', 587), 
    'from' => [ 
     'address' => env('MAIL_FROM_ADDRESS', '[email protected]'), 
     'name' => env('MAIL_FROM_NAME', 'My Name'), 
    ], 
    'encryption' => env('MAIL_ENCRYPTION', 'tls'), 

    'username' => env('[email protected]'), 

    'password' => env('password'), 

当我运行该脚本,它给了我下面的错误:

ErrorException in StreamBuffer.php line 94: 
stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: 
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed 

请注意,我已经在我的php.ini文件中启用了扩展。

+1

可能重复[PHPMailer - SSL3 \ _GET \ _SERVER \ _CERTIFICATE:证书验证失败](https://stackoverflow.com/questions/26827192/phpmailer-ssl3-get-server-certificatecertificate-verify-failed) –

+0

似乎你没有在本地服务器上安装ssl证书。您可以使用'aspmx.l.google.com'作为主机和端口25,不加密。只能将邮件发送给Gmail或G Suite用户。但我认为它很好,因为你在开发环境尚未。查看更多详情[此处](https://support.google.com/a/answer/176600?hl=zh-CN)。 – elegisandi

回答

-1

在您的ENV只需使用:

MAIL_DRIVER = sendmail的

1

.env看起来干净,但你需要仔细检查,如果您更改帐户访问安全性较低的应用程序。

转到Less secure apps部分,然后设置为激活。

希望为你工作!!!

0

刚刚从 MAIL_ENCRYPTION=tls的.ENV文件

,并在您mail.php注释下面的代码行中删除:

'encryption' => env('MAIL_ENCRYPTION', 'tls'), //comment this line 

希望能解决你的问题。

+0

我试着离开MAIL_ENCRYPTION = NULL和'encryption'=> env('MAIL_ENCRYPTION',''),但它没有工作 –

相关问题