2017-09-07 40 views
1

最新のphpバージョンとlaravel 5.4でxampp(windows)を使用しています。ここに私の.env設定laravel電子メールはlocalhostから送信されません

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

とコントローラのコード

use Mail; 
Mail::send('mail.login-verificatio', $data, function($message) use($email_to) 
{ 
$message->to($email_to, '')->subject 
    ('Login Security Number'); 
$message->from('[email protected]','xxxxxxxxxxx'); 
}); 

ですが、私はそれはあなたのSSLコンフィグが正しくないことを意味し、次のエラーに

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

おかげ

+0

Gmailのメール設定でlocalhostにアクセスできましたか? – Softmaven

答えて

0

を見つけました(またはあなたはSSL設定を全くしていません)。このエラーはから届かないLaravelそれはPHP自体から来ています。 SSL設定がPHPによって検証されていません。

この問題を解決するには、次のいずれかの操作を行います。 PHPはデフォルトでSSLを必要としない

2)使用PHP メール()機能を確認できるよう

1)が正しくSSLを設定します。私はあなたのためhttps://mailtrap.io/を使用することをお勧め:それはテスト目的のためにされている場合は、設定.ENVファイルのログ電子メールの代わりに、smtp

エキストラがこのリンクhttp://core.wp-a2z.org/oik_api/phpmailerismail/

3)にisMailをチェックあまりにではSwiftMailerでそれを使用することができますGmailの代わりにテストの目的は、あなたには多くの異なる利点を与えます。

0

方法を下記従ってみてください:

1)あなたは、あなたのconfig/mail.phpファイルのコードの下に使用することができます。

'stream' => [ 
'ssl' => [ 
    'allow_self_signed' => true, 
    'verify_peer' => false, 
    'verify_peer_name' => false, 
    ], 
], 

2)config/mail.phpファイルでTLSを削除してみます。

'encryption' => env('MAIL_ENCRYPTION', ''), //'tls') 
関連する問題