Laravel:stream_socket_enable_crypto():SSL操作失败,代码1 [重复]
Posted
技术标签:
【中文标题】Laravel:stream_socket_enable_crypto():SSL操作失败,代码1 [重复]【英文标题】:Laravel: stream_socket_enable_crypto(): SSL operation failed with code 1 [duplicate] 【发布时间】:2020-10-20 02:34:02 【问题描述】:完整的错误描述是:
ErrorException stream_socket_enable_crypto(): SSL 操作失败 带有代码 1. OpenSSL 错误消息:错误:1416F086:SSL 例程:tls_process_server_certificate:证书验证失败
我目前正在使用带有 Voyager 设置的 Laravel 7 (https://voyager.devdojo.com/)。
我的配置中已经有了这个(基于其他一些答案)how to fix stream_socket_enable_crypto(): SSL operation failed with code 1
'stream' => [
'ssl' => [
'allow_self_signed' => true,
'verify_peer' => false,
'verify_peer_name' => false,
],
],
我做了php artisan config:cache
和php artisan config:clear
但我仍然遇到同样的错误。
这就是我的 .env 的样子
MAIL_DRIVER=smtp
MAIL_MAILER=smtp
MAIL_FROM_NAME="Voyager"
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=587
MAIL_USERNAME=someUsername
MAIL_PASSWORD=somePassword
MAIL_ENCRYPTION=tls
【问题讨论】:
哈哈,这行得通。您应该将您的评论转换为答案。 【参考方案1】:不是这方面的专家,但您可以尝试 MAIL_ENCRYPTION=null。
我很确定我过去曾遇到过这种情况,这就是罪魁祸首。
【讨论】:
“不是这方面的专家,但您可以通过 Internet 发送未加密的电子邮件,以便任何人都可以阅读。” @miken32 你确实看到他在环境中设置了MAIL_HOST=smtp.mailtrap.io
。我认为这不是用于生产用途...【参考方案2】:
好的,我已经解决了这个错误。我改变了我的 .env
我只是将我的 MAIL_DRIVER 从 smtp 更改为 sendmail,它工作得非常好。
MAIL_DRIVER=sendmail
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=mygmail@gmail.com
MAIL_PASSWORD=******
MAIL_ENCRYPTION=tls
当我在本地主机上工作时,MAIL_DRIVER=smtp 工作正常,当我在 cpanel 上上传项目时,我收到了这个错误。
【讨论】:
以上是关于Laravel:stream_socket_enable_crypto():SSL操作失败,代码1 [重复]的主要内容,如果未能解决你的问题,请参考以下文章