PHPMailer 遇到 PHP 警告:证书不匹配
问题:
在 PHP 5.6 中,PHPMailer在 TLS 加密过程中遇到指示证书不匹配的 PHP 警告:
PHP Warning: stream_socket_enable_crypto(): Peer certificate CN=*.mail.dreamhost.com' did not match expected CN=mx1.sub4.homie.mail.dreamhost.com'
说明:
从 PHP 5.6 开始,默认为 SSL 连接启用证书验证。这意味着 PHPMailer 会将 SMTP 服务器提供的证书与预期的证书进行比较。如果不匹配,连接尝试可能会失败。
解决方案:
建议的解决方案是确保您的 SMTP 服务器具有有效且正确配置的证书。或者,您可以配置 PHPMailer 以忽略证书验证:
<code class="php">$mail->SMTPOptions = array ( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true));</code>
其他注意事项:
以上是以下是一些潜在的标题,将您的文章信息与问题格式相结合: 直接、清晰: * PHPMailer TLS 加密:为什么我收到证书不匹配警告? * 证书的详细内容。更多信息请关注PHP中文网其他相关文章!