Pourquoi PHPMailer génère-t-il une erreur « Incompatibilité de certificat homologue » sous PHP 5.6 ?

Susan Sarandon
Libérer: 2024-10-27 06:23:29
original
491 Les gens l'ont consulté

 Why Does PHPMailer Throw a

Avertissement PHPMailer : incompatibilité de certificat homologue

Les utilisateurs de PHPMailer rencontrant l'erreur "Avertissement PHP : stream_socket_enable_crypto() : le certificat homologue ne correspond pas à l'attente" sous PHP 5.6 peut rencontrer des problèmes de validation des certificats.

Contexte :

PHP 5.6 a introduit une vérification de certificat plus stricte pour les connexions SSL. Par conséquent, si la configuration SSL du serveur distant est incorrecte, PHPMailer ne parviendra pas à chiffrer la connexion.

Symptômes :

  • Erreur d'échec de connexion : PHPMailer affiche "Impossible de se connecter à l'hôte SMTP."
  • Erreur de journalisation : Le journal affiche un avertissement de non-concordance de certificat : "Certificat homologue CN=*.mail.dreamhost.com ...' ne correspond pas à l'attente CN=mx1.sub4.homie.mail.dreamhost.com...'".
  • Commande QUIT immédiat : PHPMailer peut émettre une commande QUIT après tentative de STARTTLS, indiquant un échec de chiffrement.

Solution :

La solution recommandée consiste à corriger les paramètres de certificat ou de vérification sur le serveur distant. Cela peut impliquer le remplacement d'un certificat invalide par un certificat valide ou la reconfiguration des paramètres SSL.

Alternative :

Si une livraison immédiate est nécessaire et que la non-concordance du certificat n'est pas critique, vous pouvez désactiver la validation des certificats dans PHPMailer en utilisant les options suivantes :

$mail->SMTPOptions = array (
    'ssl' => array(
        'verify_peer'  => false,
        'verify_peer_name'  => false,
        'allow_self_signed' => true));
Copier après la connexion

Remarque : La désactivation de la validation des certificats n'est pas recommandée car elle compromet la sécurité en acceptant potentiellement des certificats invalides.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!