✅ Notizie, temi, plugin WEB e WordPress. Qui condividiamo suggerimenti e le migliori soluzioni per siti web.

Come risolvere SMTP: impossibile autenticarsi utilizzando Gmail + PHPMailer?

94

L’invio di una posta tramite PHPMailer è spesso eseguito tramite script tramite PHP se intendi inviare notifiche e-mail quando vengono ricevuti nuovi commenti sul tuo blog wordpress o quando il server è sovraccarico di picchi elevati della CPU (tramite il tempo di attività che mostra le medie di carico negli ultimi 1, 5 e 15 minuti).

Se stai utilizzando Gmail, molto probabilmente è che Google Gmail riporterà un errore: Impossibile autenticare anche se hai digitato la password corretta per il tuo account Gmail.

Inserire la password dell’account direttamente da qualche parte nello script non è una buona idea e il modo corretto per risolvere questo problema ed evitare di perdere la password dell’account principale è utilizzare la password dell’app. In alternativa, puoi personalizzare le tue impostazioni di sicurezza per le applicazioni meno sicure, cosa che potrebbe non funzionare poiché qui è solo uno script PHP.

La password dell’app può essere impostata separatamente per ogni singola applicazione e puoi anche rigenerarne una se una è compromessa.

Dovresti visitare il dashboard di sicurezza di Google: https://myaccount.google.com/security

Come risolvere SMTP: impossibile autenticarsi utilizzando Gmail + PHPMailer?

google-app-passwords-sicurezza

Quindi, aggiungi una password per l’app (seleziona Gmail e altri – dai un nome all’app) – che può essere utilizzata nel PHPMailer – nel caso in cui questa password venga trapelata, puoi sempre eliminarla e rigenerarne una nuova.

Come risolvere SMTP: impossibile autenticarsi utilizzando Gmail + PHPMailer?

password di google-app

Quindi, il seguente codice di esempio PHPMailer dovrebbe essere utilizzato per eseguire il test dell’e-mail.

#!/usr/bin/php
<?php
  use PHPMailerPHPMailerPHPMailer;
  use PHPMailerPHPMailerException;
  
  require 'PHPMailer/src/Exception.php';
  require 'PHPMailer/src/PHPMailer.php';
  require 'PHPMailer/src/SMTP.php';
 
  $host = "<a class="vglnk" target="_blank" href="http://smtp.gmail.com" rel="nofollow"><span>smtp</span><span>.</span><span>gmail</span><span>.</span><span>com</span></a>";
  $port = 587;
  $secure = "tls";
//  or the following configurations through SSL should work as well. 
//  $port = 465;
//  $secure = "ssl";
  $username = "Your GMAIL email";
  $password = "Your GMAIL App Password";
  
  try {
    $mailer = new PHPMailer(true);
    $mailer->IsHTML(true);
    $mailer->IsSMTP();
    $mailer->From = $username;
    $mailer->FromName = $username;
    $mailer->ClearAllRecipients();
    $mailer->AddAddress("Recipent Email Address", "Recipent");
    $mailer->Subject = "Subject ";
    $mailer->Body = "Hello, time is: ". date("Y-m-d h:i:s");
    $mailer->SMTPAuth   = true;       // enable SMTP authentication
    $mailer->SMTPSecure = $secure;    // sets the prefix to the servier
    $mailer->Host       = $host;      // sets GMAIL as the SMTP server
    $mailer->Port       = $port;      // set the SMTP port for the GMAIL server
    $mailer->Username   = $username;  // GMAIL username
    $mailer->Password   = $password;  // GMAIL password
    $result = $mailer->Send();  
    echo "Mail sentn";
  } catch  (Exception $e) {
    echo 'Message could not be sent. Mailer Error: ';
    var_dump($e);
  }  

Ricorda, dovresti anche aggiornare le impostazioni e-mail in WordPress Plugin – SMTP. E assicurati di avere le seguenti credenziali per Gmail aggiornate in wp-settings.php

define( 'WPMS_ON', true );
define( 'WPMS_SMTP_PASS', 'You GMAIL App Password' );

Fonte di registrazione: helloacm.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More