Отправка электронной почты через локальный SMTP-сервер

Код:

<?php
require 'PHPMailer/PHPMailerAutoload.php';

$mail = new PHPMailer;

$mail->CharSet="utf-8";
$mail->isSMTP();                                   // Set mailer to use SMTP
$mail->Host = '172.17.224.12';                    // Specify main and backup SMTP servers
$mail->SMTPAuth = false;                            // Enable SMTP authentication
//$mail->Username = '***';          // SMTP username
//$mail->Password = '***'; // SMTP password
$mail->SMTPSecure = 'TLS';                         // Enable TLS encryption, `ssl` also accepted
$mail->Port = 25;                                 // TCP port to connect to

$mail->setFrom('[email protected]', 'Company.com');
$mail->addReplyTo('[email protected]');
$mail->addAddress('[email protected]');   // Add a recipient

$mail->isHTML(true);  // Set email format to HTML

$bodyContent = '<h1>How to Send Email using PHP in Localhost by CodexWorld</h1>';
$bodyContent .= '<p>This is the HTML email sent from localhost using PHP script by <b>CodexWorld</b></p>';

$mail->SMTPDebug = 2;
$mail->Subject = 'Email from Localhost by CodexWorld';
$mail->Body    = $bodyContent;

if(!$mail->send()) {
echo 'Message could not be sent.<br>';
echo 'Mailer Error: ' . $mail->ErrorInfo;

} else {
echo 'Message has been sent';
}
?>

Когда я запускаю этот код, он говорит, что сообщение было отправлено. Однако, когда я смотрю на свою электронную почту, появляется уведомление о том, что электронная почта, отправленная через мой код, была возвращена.

В чем может быть возможная проблема? это была конфигурация в моем коде или сервер?

Screencap отскок электронной почты

1

Решение

Для тех, кто сталкивается с той же проблемой, решение этой проблемы — ответ Смозгура.

Я думаю, что сервер, который вы пытаетесь отправить электронную почту через php — ваш
локальный сервер — не авторизован для отправки электронной почты и считается спамом
(как кто-то другой пытается отправить электронное письмо, используя ваши учетные данные).
Когда мне нужно, чтобы мои скрипты отправляли почту с сервера, тогда я добавляю
мой сервер IP как запись SPF в записях DNS. Таким образом, моя электронная почта
Сервер знает, что IP отправляет электронную почту, насколько мне известно, и позволяет. В
ваш случай, я думаю, вы можете добавить свой IP, чтобы временно решить
проблема. Но вы должны сделать это для IP-адреса рабочего сервера позже, так как
Что ж. Если это так, конечно ..

Я связался с супервайзером и рассказал ему о состоянии функции электронной почты, которая заключается в том, что электронные письма отправляются, но почтовый сервер возвращает электронные письма отправителю. Также возможной причиной проблемы является то, что локальный сервер не авторизован для отправки электронной почты и рассматривается как СПАМ. Наконец, возможное решение, которое заключается в добавлении IP-адреса сервера в качестве SPF-записи в DNS-записи.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]