php - 发送 TLS 电子邮件时 Laravel 证书验证错误

标签 php laravel email openssl

Windows 10、Apache httpd 2.4、PHP 7.1.4、Laravel 5.5
Gmail 的安全性较低是允许的。

我的 .env 文件:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=account@gmail.com
MAIL_PASSWORD=password
MAIL_ENCRYPTION=ssl
错误信息:

Connection could not be established with host smtp.gmail.com


MAIL_PORT=587
MAIL_ENCRYPTION=tls
错误信息:

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


如何解决“证书验证失败”错误?

最佳答案

解决方案:

  • 下载 the cURL cacert.pem file
  • 把 cacert.pem 放在你喜欢的地方
  • 编辑 php.ini引用此文件位置:

  • curl.cainfo = D:/Servers/php/sslfiles/cacert.pem
    openssl.cafile = D:/Servers/php/sslfiles/cacert.pem
    
  • 重启网络服务器
  • 关于php - 发送 TLS 电子邮件时 Laravel 证书验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51573151/

    相关文章:

    javascript - jQuery PHP 处理输入数组

    php - 如何找到 PHP 文件中使用的所有类?

    php - 从长字符串 PHP 创建多维数组

    mysql - 根据列值连接 3 个表 - Laravel

    php - 如何使用 Laravel 包 楼主

    c# - 在 C# 中将 PST 转换为多个 EML 文件

    php - 将多个具有不同值的复选框插入相应的数据库列

    javascript - UniSharp/laravel-ckeditor 在 laravel 5.7 中不工作

    swift - 使用 ios 8 应用程序打开邮件中的附件 [swift]

    c# - 从邮件客户端打开应用程序,Windows Phone 8