PHPMailer отправляет электронные письма с предупреждением: это сообщение может и не отправляться: foo@gmail.com Подробнее

Я использую PHPMailer для отправки автоматических сообщений электронной почты с моего сайта, и во время тестирования я заметил, что все электронные письма, отправленные почтовой программой php, генерируют следующее предупреждение в конце получателей:

Это сообщение, возможно, не было отправлено: foo@gmail.com Подробнее Подробнее

Мне было интересно, есть ли способ избежать этого?

PHP Mailer code:

//mail functions require("mailer/class.phpmailer.php"); require("mailer/class.smtp.php"); require("mailer/class.pop3.php"); $mail = new PHPMailer(); $mail->IsSMTP(); $mail->Host = "relay-hosting.secureserver.net"; $mail->Port = 25; $mail->IsHTML(true); $mail->Username = "foo@gmail.com"; // SMTP username $mail->Password = "pass"; // SMTP password $mail->From = "foo@gmail.com"; $mail->FromName = "FOO"; $mail->AddAddress("fOO@gmail.com", "WIDB"); $mail->AddReplyTo("foo@gmail.com"); //$mail->AddAddress("foo@gmail.com"); // name is optional $mail->WordWrap = 50; // set word wrap to 50 characters //$mail->AddAttachment("/var/tmp/file.tar.gz"); // add attachments //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // optional name $mail->IsHTML(true); // set email format to HTML $mail->Subject = 'Foo - Transaction Receipt'; $mail->Body = $message; $mail->AltBody = "nothing"; //send mail $mail->Send(); 

Я использую GMail, и у меня включен SMTP …

Вы можете либо настроить приложения Google для своего сайта, и получить учетную запись gmail Username@yourwebsite.com ( более подробную информацию здесь бесплатно), или вам нужно будет настроить адрес электронной почты на вашем текущем сервере, который является именем пользователя @ yourwebsite. com и использовать это как адрес $ mail-> from.

Получатели электронной почты получают сообщение, потому что вы сообщаете Google для отправки электронной почты с вашего сервера, а затем вы сообщаете им, что почта поступает из gmail, а это не так, она поступает с вашего личного сервера , Поскольку адрес и адрес сервера не совпадают, они отмечают его как спам. Это метод googles для предотвращения спама, для них было бы одинаково, если вы поместите $ mail-> from (YOURMOM@LOL.com). Электронная почта по-прежнему будет отправляться, но ваше доменное имя не соответствует адресу @.

Помимо приведенных выше рекомендаций, здесь я заметил, что это может помочь кому-то.

Когда я отправил электронное письмо с телом «Пожалуйста, проверьте прилагаемый заказ на работу» и вложение в формате pdf, gmail показал его с предупреждением о спаме (внутри почтового ящика)

Когда я отправил электронное письмо с телом «Ваш рабочий заказ был прикреплен» и то же вложение в формате pdf, gmail не показывал никаких предупреждений.

Я использую java api для отправки писем