Maison  >  Article  >  développement back-end  >  Comment corriger l'erreur « Échec de la vérification du certificat » lors de l'utilisation de PHPMailer avec un certificat auto-signé ?

Comment corriger l'erreur « Échec de la vérification du certificat » lors de l'utilisation de PHPMailer avec un certificat auto-signé ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-26 10:56:30479parcourir

How to Fix

Problème de vérification SSL PHPMailer : échec de la vérification du certificat

Problème :

Lors de la tentative d'envoi e-mails provenant d'un serveur de messagerie avec un certificat auto-signé, PHPMailer renvoie l'erreur suivante :

PHP Warning: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in class.smtp.php on line 327.

Solution :

À partir de PHP 5.6, la vérification du certificat SSL a été introduit. Pour revenir à l'ancien comportement sans vérification, définissez la propriété SMTPOptions dans PHPMailer :

<code class="php">$mail->SMTPOptions = array(
    'ssl' => array(
        'verify_peer' => false,
        'verify_peer_name' => false,
        'allow_self_signed' => true
    )
);</code>

Remarque :

La désactivation de la vérification SSL a des implications en matière de sécurité. Sans vérification, les acteurs malveillants peuvent usurper l’identité de points finaux de confiance et lancer des attaques de type Man-in-the-Middle. Considérez ces risques avant d’utiliser cette solution.

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!

Déclaration:
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