StreamBuffer.php 第 268 行中的 Swift_TransportException:
Posted
技术标签:
【中文标题】StreamBuffer.php 第 268 行中的 Swift_TransportException:【英文标题】:Swift_TransportException in StreamBuffer.php line 268: 【发布时间】:2017-08-07 09:00:49 【问题描述】:当我尝试从我的 laravel 网站发送电子邮件时,我收到此错误
无法与主机 lin01.hkdns.co.za [#0] 建立连接
我的所有细节都是正确的。我的环境
MAIL_DRIVER=smtp
MAIL_HOST=lin01.hkdns.co.za
MAIL_PORT=465
MAIL_USERNAME=info@mysite.co.za
MAIL_PASSWORD=password
MAIL_ENCRYPTION=ssl
在我的mail.php中
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'info@mysite.co.za'),
'name' => env('MAIL_FROM_NAME', 'Info'),
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
是我遗漏了什么还是我的服务器有问题?
【问题讨论】:
【参考方案1】:有时可能会在 laravel 中“缓存”。
使用此命令再试一次:
php artisan config:clear
如果不起作用,请尝试重新启动 xampp。
检查问题是否出在您的主机或您的配置的另一个选项是使用 Gmail 服务器发送测试电子邮件。
把它放在你的.env
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=myemail@gmail.com
MAIL_PASSWORD=apppassword
MAIL_ENCRYPTION=tls
创建或使用任何gmail帐户并启用less secure apps更多信息here
首先登录到您的 gmail 帐户,然后在我的帐户下 > 登录并 安全>登录谷歌,启用两步验证,然后你 可以生成应用程序密码,您可以在 .env 中使用该应用程序密码 文件。
您的 .env 文件将如下所示
MAIL_DRIVER=smtp MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=myemail@gmail.com
MAIL_PASSWORD=apppassword
MAIL_ENCRYPTION=tls
在更改后不要忘记运行
php artisan config:cache
你的 .env 文件(或重启你的服务器)。
来源here
【讨论】:
我现在收到此错误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
如果您使用的是 Docker,请考虑重新启动您的容器!以上是关于StreamBuffer.php 第 268 行中的 Swift_TransportException:的主要内容,如果未能解决你的问题,请参考以下文章