Сообщение не отправляется с такими настройками
$mail = new PHPMailer;
$mail->SMTPDebug = 4;
$mail->isSMTP();
$mail->Host = "domain.com";
$mail->SMTPAuth = true;
$mail->Username = "login";
$mail->Password = "pasw";
$mail->SMTPSecure = "tls";
$mail->Port = 2525;
$mail->CharSet = 'UTF-8';
Расширение openssl загружено. Вывод отладки здесь
https://justpaste.it/1ecjw
Первая проблемная линия есть
2017-12-08 09:48:53 SMTP -> get_lines(): $str is "502 5.5.1 command not supported in "STARTTLS""
Telnet говорит, что есть служба ESMTP.
Я не знаю, что расследовать дальше …
Не слишком сложно — ваш почтовый сервер не поддерживает STARTTLS
, Если бы он это сделал, он появится в списке возможностей после первого EHLO
команда, которая это:
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250-8BITMIME
250-AUTH CRAM-MD5 PLAIN LOGIN
250-AUTH=CRAM-MD5 PLAIN LOGIN
250-XACK
250-SIZE 0
250-VERP
250 DSN
STARTTLS
нет в этом списке. Он все еще может поддерживать шифрование через SMTPSecure = 'ssl'
а также Port = 465
, но в противном случае вам нужно будет использовать наиболее безопасный вариант аутентификации по этому незашифрованному каналу, который AuthType = 'CRAM-MD5'
,
ESMTP
просто означает, что он поддерживает «Расширенный SMTP» с EHLO
(и все, что это означает), а не только основной SMTP HELO
,
Кстати — SMTPDebug = 4
слишком шумно для этого уровня проблемы, вам нужно максимум 3. Кроме того, вы используете старую версию PHPMailer, обновление.
Других решений пока нет …