Несколько дней бился с проблемой: поисковики mail.ru и gmail.com добавляли рассылку свежих комментов блога в спам. Или вообще отказывались принимать почту:
This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:[здесь чья-то почта на mail.ru/bk.ru/inbox.ru и т.д.]
SMTP error from remote mail server after end of data:
host mxs.mail.ru [217.69.139.150]: 550 Message was not accepted — it contains invalid headers. More specially, ‘From:’ header must match user you are sending mail from. See http://help.mail.ru/mail-help/mailer/popsmtp for details.—— This is a copy of the message, including all the headers. ——
Return-path: <здесь моя почта на мэйл.ру>
Received: from user by Мой сайт with local (Exim 4.80.1)
(envelope-from <здесь моя почта на мэйл.ру>)
id 1WmATO-0005tU-EA
for [здесь чья-то почта на mail.ru/bk.ru/inbox.ru и т.д.]; Mon, 19 May 2014 03:26:30 +0400
Копался я, копался, 1) в настройках ISP-панели всё пересмотрел; 2) в настройках блога, 3) в админке — ну везде стоит моя почта@сайт.ру, а не моя почта на мэйл.ру, а ведь именно из-за неё мэйл.ру говорит, типа «слышь, парниша, а че ты ставишь адрес отправителя мэйловский, а письмо шлешь со своего сервака?»
Это типа защита их такая, от спама. Гугл мне как-то поверил на слово, перестал отказами заваливать, а с мэйлом пришлось покопаться. Решением стал плагин WP Mail SMTP. Настройки поставил простые:
Ниже ничего не настраивал.
И всё вернулось на круги своя, рассылки всем доходят.
Как говорят в интернете…
Плагин поможет, если у вас не получается использовать функцию mail() встроенную в php. Это может быть из-за ошибок в настройке хостинга или из-за ограничения прав.
Ну вот скрипт и исправил какой-то косяк.