Все электронные письма отправляются в папку спама GMail, Hotmail и других почтовых провайдеров, использующих phpmailer

Недавно у меня возникла проблема с отправкой электронной почты с помощью функции PHP Mailer . Каждая почта, которую я отправил из моего скрипта, прямо идет в папку спама на GMail, HotMail и других почтовых провайдерах.

Я настроил everythig с моим доменным именем, паролем и т. Д. …

Вот мой PHP-код:

 $message = " <html> <head> <title>Activation</title> </head> <body> <p>Hello moorthi , </p> <p>Thank you for Using My Mail Service <b><a href='http://www.mobilebeez.co.in/'>mobileBeez </a></b></p><br/> <p><b>mobileBeez Technologies<b><br>Chennai, India.</p> <p><a href='https://www.facebook.com/mobileBeez'>https://www.facebook.com/mobileBeez</a></p> </body> </html> "; $mail = new PHPMailer(); // create a new object $mail->IsSMTP(); // enable SMTP $mail->Host = "vps.vendarcorporates.com"; $mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only $mail->SMTPAuth = true; // authentication enabled $mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail $mail->Port = 465; $mail->IsHTML(true); $mail->Username = "info@vendarcorporates.com"; $mail->Password = "***************"; $mail->SetFrom("info@vendarcorporates.com"); $mail->FromName = "mobile Beez"; $mail->AddReplyTo("info@vendarcorporates.com","mobile Beez"); $mail->Subject = "Activate your Account"; $mail->Body = $message; $mail->AddAddress("moorthi@gmail.com"); // To Address if($mail->Send()) { print json_encode("SUCCESS"); } else { echo "Mailer Error: " . $mail->ErrorInfo; } 

И я получил результат, как SUCCESS что означает «Почта успешно отправлена». Но когда я проверяю свой GMail, почта, которую я отправил, находится в папке SPAM.

На моем сервере это конфигурация почты

 Secure SSL/TLS Settings (Recommended) Username: info@vendarcorporates.com Password: Use the email account's password. Incoming Server: vps.vendarcorporates.com IMAP Port: 993 POP3 Port: 995 Outgoing Server: vps.vendarcorporates.com SMTP Port: 465 Authentication is required for IMAP, POP3, and SMTP. 

Недавно у меня возникла проблема с отправкой электронной почты с помощью функции PHP Mailer . Каждая почта, которую я отправил из моего скрипта, прямо идет в папку спама на GMail, HotMail и других почтовых провайдерах.

Проблема не имеет ничего общего с PHP Mailer, вашим кодом или даже вашим хостом. Но это связано с общими настройками исходящей почты на вашем имени хоста и даже IP-адресе. Значение, когда вы говорите это:

И я получил результат, как SUCCESS что означает «Почта успешно отправлена». Но когда я проверяю свой GMail, почта, которую я отправил, находится в папке SPAM.

Правильно, ваша почта была фактически отправлена ​​сервером. И это хорошо. Но почтовые серверы на принимающей стороне каким-то образом не доверяют вашему имени хоста или IP-адресу. Для этого можно сделать несколько вещей. Например, установка и запись SFP в DNS вашего хоста и установка записи PTR (обратного DNS) для IP-адреса сервера, который отправляет фактические электронные письма.

Прежде всего, является vendarcorporates.com фактическим доменом? Выполнение ping для него на этом инструменте, который показывает глобально, показывает согласованные результаты Unknown host: vendarcorporates.com . Если это так, и вы пытаетесь отправить с этим, там есть ваша проблема.

Что касается записей SPF, это запись DNS, которая означает «Framework Policy Sender», которая в основном означает: вы, как владелец имени хоста, разрешаете этим другим IP-адресам и именам хостов отправлять электронную почту от вашего имени. Подробнее здесь конкретно:

Более точно, SPFv1 позволяет владельцу домена указать свою политику отправки почты, например, какие почтовые серверы они используют для отправки почты из своего домена. Технология требует, чтобы две стороны играли вместе: (1) владелец домена публикует эту информацию в записи SPF в зоне DNS домена, а когда чужой почтовый сервер получает сообщение, заявляющее, что он пришел из этого домена, тогда (2) получение сервер может проверить , соответствует ли сообщение заявленной политике домена. Если, например, сообщение приходит с неизвестного сервера, его можно считать подделкой.

То, как вы это настроили, – это настроить TXT (текстовую) запись в вашем DNS с чем-то вроде этого:

 "v=spf1 ip4:123.45.67.890 ~all" 

Предполагая, что ваш домен является vendarcorporates.com , запись SPF, подобная этой, будет работать следующим образом на принимающей стороне:

  • Привет, я только что получил электронное сообщение от кого-то, претендующего на vendarcorporates.com !
  • Связан ли этот IP-адрес с этим сообщением с vendarcorporates.com ?
  • Если это IP-адрес, подключенный к vendarcorporates.com , то все хорошо!
  • Но этот IP-адрес составляет 123.45.67.890 и он не подключен к vendarcorporates.com . Итак, давайте проверим запись SPF.
  • Хорошо, я читаю запись SPF, и 123.45.67.890 разрешено отправлять электронные письма для vendarcorporates.com , поэтому давайте vendarcorporates.com это сообщение.

Теперь это может не полностью решить проблему. Таким образом, помимо записи SPF, вы должны убедиться, что на вашем сервере есть действительная запись PTR (обратная DNS), которая каким-то образом соответствует вашему имени хоста.

В отличие от записи DNS, где имя хоста транслируется на IP-адрес, запись PTR является обратной DNS-записью, в которой IP-адрес переводится в имя хоста. Дополнительная информация о Википедии .

Как установить PTR зависит от того, как работает ваш хост.

  • Некоторые из них, такие как RackSpace, позволяют клиентам самостоятельно устанавливать записи PTR.
  • Другие, такие как Amazon AWS, позволят вам запросить запись PTR, но они должны ее одобрить.
  • И многие другие просто не позволят вам установить запись PTR самостоятельно. Вам необходимо обратиться в службу хостинга и попросить их установить для вас запись PTR.

Причина записи PTR важна, это еще одна проверка в цепочке «Is this SPAM?». Таким образом, это будет выглядеть так:

  • Привет, я только что получил электронное сообщение от кого-то, претендующего на vendarcorporates.com !
  • Связан ли этот IP-адрес с этим сообщением с vendarcorporates.com ?

На этом втором этапе, где есть проверка, чтобы узнать, подключен ли IP-адрес почты к vendarcorporates.com ? Это проверка записи PTR.

Я довольно уверен, что наличие записи SPF и PTR для вашего доменного имени и набора хостов позволит устранить эту проблему.

И, по-видимому, у вас есть набор записей SPF и PTR, но все же электронные письма попадают в СПАМ? Ну, это означает, что ваше имя хоста и / или IP-адрес занесены в черный список. И это целая другая червь червей, с которой вы можете иметь дело. Вы можете проверить свой статус черного списка с помощью онлайн-инструмента, такого как MX Toolbox, и следовать индивидуальным рекомендациям по обслуживанию, чтобы попросить вас удалить. Но в зависимости от серьезности вашего рейтинга в этом списке это может быть либо простой задачей, либо очень сложной.

Это все, что можно сказать, в то время как такие инструменты, как PHP Mailer, облегчают процесс отправки электронной почты, весь процесс обеспечения ваших электронных сообщений не помечен как СПАМ – это целый другой пресловутый зверь, который имеет мало общего с особенностями кодирования.

Хорошая вещь здесь заключается в том, что электронные письма получают от ISP, таких как gmail … что означает, что u're code (phpMailer) работает нормально, так что проблема, которая возникает в отношении нежелательной почты, конечно, не является кодом, а чем-то еще , Мне очень сложно помочь вашему билету без каких-либо подробностей, таких как сгенерированный заголовок ISPS, который вы пытаетесь получить в своей папке «Входящие», но я могу привести вам пример, который может повлиять на электронные письма: например, контент, который используется в сообщениях электронной почты (html, words, from, Subject), репутации вашего ips-адреса и домена, используемого для отправки сообщений snd. Также вы должны убедиться, что в отправляющем домене есть spf-запись, которая разрешает ваши ips для отправки.