Я использую PHPMailer для отправки моих писем по SMTP. У меня есть класс, где после инициализации он автоматически подключается к моему серверу по адресу I.P и входит в мою учетную запись электронной почты.
Snippet from class,
function __construct()
{
global $PHPMailer;
$PHPMailer->IsSMTP();
$PHPMailer->Host = '67.222.10.87';
$PHPMailer->SMTPAuth = true;
$PHPMailer->Username = '[email protected]';
$PHPMailer->Password = "MYPASSWORD";
$PHPMailer->SMTPSecure = '';
}
public function sendEmail($email, $subject, $message, $altMessage) {
global $PHPMailer;
$PHPMailer->From = '[email protected]';
$PHPMailer->FromName = 'Network Your Fortune';
$PHPMailer->AddAddress($email);
$PHPMailer->AddReplyTo('[email protected]', 'Support');
$PHPMailer->WordWrap = 50;
$PHPMailer->IsHTML(true);
$PHPMailer->CharSet = "text/html; charset=UTF-8;";
$PHPMailer->Subject = $subject;
$PHPMailer->Body = $message;
$PHPMailer->AltBody = $altMessage;
if($PHPMailer->Send())
return true;
else
return false;
}
Snippet from php file that sends the email,
$mailHandler = MailHandler::getInstance();
$HTMLMessage = "
<html>
<body>
<p>
Hello Jack,
We are so happy you have took your first step with us and welcome you to Network Your Fortune. We hope you are excited at our systems potential for all
our memebers.
Click the link below to get direct access to our website where you will find how you can join our free rota today!
<a href='http://networkyourfortune.co.uk/rotainfo/'>Click Here To See And Join Our Rota!</a>
</p>
</body>
</html>
";
$altMessage = "
<html>
<body>
<p>
Hello Jack,
We are so happy you have took your first step with us and welcome you to Network Your Fortune. We hope you are excited at our systems potential for all
our memebers.
Click the link below to get direct access to our website where you will find how you can join our free rota today!
Click Here To See And Join Our Rota!: http://networkyourfortune.co.uk/rotainfo/
</p>
</body>
</html>
";
if($mailHandler->sendEmail("[email protected]", "JACK RESPONSE REQUIRED: Add Yourself To Our Rota", $HTMLMessage, $altMessage))
echo "Sent";
else
echo "Error while sending";
Раздел кода выше генерирует сообщение и отправляет его. Проблема в том, что он просто попадает прямо в мою папку для спама на двух разных учетных записях электронной почты.
Я проверил свое сообщение на mail-tester.com, см. результаты здесь.
Он использует SpamAssassin, который является «антиспамовой платформой с открытым исходным кодом» и используется на ОГРОМНОМ количестве почтовых серверов, являющихся стандартом для фильтрации спама. Ключевые результаты были такими, как показано,
Он говорит: «HTML: изображения с 800-1200 байтами слов
Вы должны написать больше текста в своем электронном письме «. Делая небольшое исследование, эта ошибка, кажется, помечена, если у вас нет текста вообще и только изображение. У меня есть текст и нет изображений!
Там написано: «HTML и текстовые части разные». Если у вас есть HTML-ссылки, и вы должны удалить их для альтернативной версии, то, конечно, все будет немного по-другому, из-за этого будет потеряно 0,724 балла!
В нем также говорится: «Доставлено во внутреннюю сеть хостом без rDNS», где я связался с моим хостинг-провайдером для моего виртуального частного сервера, и они убедились, что обратный DNS работает отлично.
Это худшее чувство, когда ни одно из ваших сообщений не доставляется без спама. Может ли кто-нибудь, пожалуйста, просветить, где или кто идет не так здесь. Я действительно ценю любую помощь в решении моей проблемы.
Задача ещё не решена.
Других решений пока нет …