我有一个“两种罪恶中的较轻”的困境。我正在工作的网站没有SSL。因此,我将在这里描述SMTP问题:https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting#php-56-certificate-verification-failure
所以,选择似乎是..。
mail()部分,通过PHPMailer使用php $mail->isSMTP();函数。知道这类事情的人能与任何一条路线的利弊相权衡吗?谢谢。
发布于 2017-09-24 23:55:59
这两个并不是唯一的选择。找出为什么证书无法使用指南中显示的测试进行验证。
如果( a)您请求加密,或者( b)如果您的服务器表示支持它,那么PHPMailer将使用加密,在这种情况下,它是自动启用的。
如果您的服务器呈现的是自签名或过期证书,它将无法验证--您可以获得一个真正的证书,如果没有配置您的邮件服务器停止广告加密,或者通过设置PHPMailer和SMTPAutoTLS = false告诉它根本不使用加密。
不使用isSMTP并不是更安全-所有发生的都是来自本地邮件服务器的相同连接,在那里它可能(取决于您的邮件服务器的设置)面临完全相同的问题。
https://stackoverflow.com/questions/46393522
复制相似问题