Не могу отправлять письма с phpmailer - smtp.com - PullRequest
0 голосов
/ 22 мая 2018

Я не могу отправлять электронные письма, используя сервер SMTP, который мы используем.

РЕДАКТИРОВАТЬ: Сначала я получил ошибку getaddrinfo fail: имя или служба неизвестна, но это было исправлено.Но я все еще получаю ошибки ниже.

Server: send.smtp.com
Port: 25
Use encrypted protocol: No
Authentication: requires username/password 

Вещи, которые я пробовал:

  • проверенные настройки с поддержкой людей на smtp.com
  • Пробовал разные порты(80, 2525)
  • Временно отключил брандмауэр на компьютере, на котором запущен мой сервер apache (7 RHEL)
  • Использование IP-адреса в качестве адреса сервера

Когда я пытаюсь отправить тестовое электронное письмо, я получаю:

SMTP -> FROM SERVER: 
SMTP -> FROM SERVER: 
SMTP -> ERROR: EHLO not accepted from server: 
SMTP -> FROM SERVER: 
SMTP -> ERROR: HELO not accepted from server: 
SMTP -> ERROR: AUTH not accepted from server: 

object(SMTP)#35 (7) { 
  ["SMTP_PORT"]=> int(25) 
  ["CRLF"]=> string(2) " " 
  ["do_debug"]=> bool(true) 
  ["do_verp"]=> string(2) "on" 
  ["smtp_conn":"SMTP":private]=> resource(474) of type (stream) 
  ["error":"SMTP":private]=> array(3) { 
    ["error"]=> string(29) "AUTH not accepted from server" 
    ["smtp_code"]=> bool(false) 
    ["smtp_msg"]=> bool(false) 
  } 
  ["helo_rply":"SMTP":private]=> NULL 
} 

SMTP -> NOTICE: EOF caught while checking if connected 
SMTP -> FROM SERVER: 
SMTP -> FROM SERVER: 
SMTP -> ERROR: EHLO not accepted from server: 

SMTP -> FROM SERVER: 
SMTP -> ERROR: HELO not accepted from server: 
SMTP -> ERROR: AUTH not accepted from server: 

object(SMTP)#35 (7) { 
  ["SMTP_PORT"]=> int(25) 
  ["CRLF"]=> string(2) " " 
  ["do_debug"]=> bool(true) 
  ["do_verp"]=> string(2) "on" 
  ["smtp_conn":"SMTP":private]=> resource(476) of type (stream) 
  ["error":"SMTP":private]=> array(3) { 
    ["error"]=> string(29) "AUTH not accepted from server" 
    ["smtp_code"]=> bool(false) 
    ["smtp_msg"]=> bool(false) 
  } 
  ["helo_rply":"SMTP":private]=> NULL 
} 

SMTP -> NOTICE: EOF caught while checking if connected

Мне удалось связаться по телнету:

# telnet send.smtp.com 25
Trying 192.40.165.68
Connected to send.smtp.com
Escape character is '^]'

Редактировать: увидел это в / var / log / maillog

May 23 08:20:38 txapone sendmail[68217]: w4MHtNJF053686: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=18:25:15, xdelay=00:00:40, mailer=relay, pri=1740402, relay=send.smtp.com [192.40.165.69], dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com
May 23 08:20:38 txapone sendmail[68217]: w4MHvv5c053871: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=18:22:40, xdelay=00:00:00, mailer=relay, pri=1740402, relay=send.smtp.com, dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com
May 23 08:20:38 txapone sendmail[68217]: w4MHakO3053279: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=18:43:52, xdelay=00:00:00, mailer=relay, pri=1830402, relay=send.smtp.com, dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com
May 23 08:20:38 txapone sendmail[68217]: w4MHcf5U053351: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=18:41:57, xdelay=00:00:00, mailer=relay, pri=1830402, relay=send.smtp.com, dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com
May 23 08:20:38 txapone sendmail[68217]: w4MHmc4h053590: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=18:32:00, xdelay=00:00:00, mailer=relay, pri=1830402, relay=send.smtp.com, dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com
May 23 08:22:46 txapone sendmail[68288]: w4NCMkVH068288: from=apache, size=121, class=0, nrcpts=1, msgid=<201805231222.w4NCMkVH068288@txapone.tframes.local>, relay=apache@localhost
May 23 08:22:46 txapone sendmail[68289]: w4NCMk5M068289: from=<apache@server.domain.local>, size=402, class=0, nrcpts=1, msgid=<201805231222.w4NCMkVH068288@txapone.tframes.local>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
May 23 08:22:46 txapone sendmail[68288]: w4NCMkVH068288: to=me@mydomain.com, ctladdr=apache (48/48), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30121, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (w4NCMk5M068289 Message accepted for delivery)
May 23 08:23:27 txapone sendmail[68291]: w4NCMk5M068289: to=<me@mydomain.com>, ctladdr=<apache@server.domain.local> (48/48), delay=00:00:41, xdelay=00:00:41, mailer=relay, pri=120402, relay=send.smtp.com [192.40.165.68], dsn=4.0.0, stat=Deferred: Connection reset by send.smtp.com

Это скрипт PHP, который я использую:

<?php
require("src/PHPMailer.php");
require("src/SMTP.php");
require("src/Exception.php");
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->IsSMTP();
$mail->Host = "send.smtp.com"; 
$mail->SMTPAuth = true; 
$mail->Username = "webmaster@domain.com"; 
$mail->Password = "pwd";
$mail->Port = "25";
$mail->From = "notification@domain.com"; 
$mail->FromName = "Company"; 
$mail->AddAddress("allisonc@domain.com", "Me"); 
$mail->AddReplyTo("notification@domain.com", "Company"); 
$mail->WordWrap = 50; 
$mail->IsHTML(false); 
$mail->Subject = "SMTP.com Test";
$mail->Body = "SMTP.com Test Message!";
$mail->Timeout = 30;
$mail->SMTPDebug = 4;
$mail->SMTPSecure = FALSE;
$mail->SMTPAutoTLS = FALSE;
if(!$mail->Send())
{
 echo "Message could not be sent. <p>";
 echo "Mailer Error: " . $mail->ErrorInfo;
 var_dump($mail);
 //exit;
}
else
{
  echo "Message has been sent";
}


echo "<hr>";

$success = mail('allisonc@domain.com', 'Test Mail function', 'Test Mail function');
if (!$success) {
  echo "mail failed";
    $errorMessage = error_get_last()['message'];
    var_dump($errorMessage);
}
var_dump($success);

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация / тесты.

1 Ответ

0 голосов
/ 23 мая 2018

Конечным результатом было то, что smtp.com блокировал наш IP-адрес.

(я спрашивал их об этом пару дней назад, и они отрицали это, но сегодня они поняли, что это так.)

...