2017-07-30 104 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',''),但它沒有工作 –

相關問題