PHPMailer не будет использовать SMTP

#php #email #smtp #phpmailer

#php #Адрес электронной почты #smtp #phpmailer

Вопрос:

Я использую PHPMailer 6.2 (общий веб-хостинг, поэтому я взял последнюю версию кода с Github и загрузил ее на свой FTP. Когда я хочу отправлять почту без SMTP, проблем с отправкой почты не возникает. Однако, когда я использую SMTP (а мне это нужно), ничего не происходит. Похоже, что страница вообще не загружается. Я не получаю ошибок или уведомлений, поэтому я не понимаю, что я здесь делаю не так. Используя инструмент тестирования SMTP, я вижу, что мои учетные данные и данные подключения в порядке. Вот мой код:

 <?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;

require __DIR__.'/PHPMailer/src/Exception.php';
require __DIR__.'/PHPMailer/src/PHPMailer.php';
require __DIR__.'/PHPMailer/src/SMTP.php';

$mail = new PHPMailer(TRUE);
    
try {
    $mail->setFrom("xxx", "Test");
    $mail->addAddress('xxx', 'Test');
    $mail->Subject = 'Bericht via de website';
    $mail->Body = "hier een testbericht"; 

    $mail->isSMTP();
    $mail->SMTPDebug  = 1;     
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = TRUE;
    $mail->SMTPSecure = 'tls';
    $mail->Username = 'xxx';
    $mail->Password = 'xxx';
    $mail->Port = 587;


    $mail->send();
} catch (Exception $e) {
    echo $e->errorMessage();
} catch (Exception $e) {
    echo $e->getMessage();
}
die("done");
?>
 

Редактировать: после 20 минут загрузки генерируется следующий ответ:

 2020-11-28 19:40:07 CLIENT -> SERVER: EHLO <my/e-mail rcpt domain>
2020-11-28 19:45:07 SERVER -> CLIENT:
2020-11-28 19:45:07 SMTP ERROR: EHLO command failed:
2020-11-28 19:45:07 CLIENT -> SERVER: HELO <my/e-mail rcpt domain>
2020-11-28 19:50:07 SERVER -> CLIENT:
2020-11-28 19:50:07 SMTP ERROR: HELO command failed:
2020-11-28 19:50:07 CLIENT -> SERVER: STARTTLS
2020-11-28 19:55:07 SERVER -> CLIENT:
2020-11-28 19:55:07 SMTP ERROR: STARTTLS command failed:
SMTP Error: Could not connect to SMTP host.
2020-11-28 19:55:07 CLIENT -> SERVER: QUIT
2020-11-28 20:00:07 SERVER -> CLIENT:
2020-11-28 20:00:07 SMTP ERROR: QUIT command failed:
SMTP Error: Could not connect to SMTP host.
SMTP Error: Could not connect to SMTP host.```
 

Комментарии:

1. $mail->SMTPDebug = SMTP::DEBUG_SERVER; $mail->SMTPDebug = 2; //Alternative to above constant Добавьте это в свой код, чтобы вы могли видеть ошибки. Попробуйте запустить скрипт с терминала.

2. Сейчас я не получаю информацию об отладке, поскольку сама страница, похоже, вообще не загружается. Что вы имеете в виду, терминал?

3. Вы можете попробовать изменить это для тестирования $mail->Body = «<b> hier een testbericht</b>»; // HTML Body $mail-> AltBody = «hier een testbericht»; // Текстовое тело

4. Спасибо, однако добавление тела HTML не меняет не загружаемую страницу.

5. Что говорят журналы?