Когда я отправляю почту с PHP, destinatary получает заголовок, подобный этому:
noreply@justwalk.it **via** de p3nlhg147.shr.prod.phx3.secureserver.net
Я хочу удалить часть «через». Большинство автоматических писем с веб-сайтов не имеют «через», поэтому его можно удалить.
Как они это делают?
Да, вы можете избавиться от «сквозной» части. Вот подробности:
1) SPF and DKIM
Во-первых, вам нужно будет установить SPF- запись для домена, с которого вы отправляете электронные письма, и включить DKIM . Это прежде всего для идентификации ваших сообщений против спама.
2) "From: anything@yourdomain.com"
Во-вторых, убедитесь, что вы устанавливаете заголовок «From:», чтобы быть адресом электронной почты в домене, с которого вы отправляете сообщения. Не притворяйтесь кем-то другим. Используйте «From: someone@abc.com», если вы отправляете сообщения с сайта abc.com, а не что-либо еще, например blah@def.com или yours@gmail.com, или что-то еще. Если вы хотите, чтобы получатель отвечал на ваш почтовый адрес Gmail вместо электронной почты вашего домена, используйте заголовок «Reply-To:». «От:» всегда должен быть адрес электронной почты домена, с которого вы отправляете электронное письмо.
3) "Return-Path: return@yourdomain.com"
В-третьих, самое главное, установите заголовок «Return-Path:» в том же домене, что и заголовок «From:». Используйте 5-й параметр функции mail () для этого:
mail('recipient@example.com', 'Subject', "Message Body", $headers, '-freturn@yourdomain.com')
Таким образом, возвращаемый путь этого сообщения будет «return@yourdomain.com» (адрес электронной почты сразу после ключа -f). Параметр $ headers должен содержать все необходимые заголовки сообщений. Убедитесь, что «From:» – это something@yourdomain.com.
После этих шагов и мер Gmail теперь должен полностью доверять вашим сообщениям с вашего домена. Поле «через» ваших сообщений должно исчезнуть, а поле «по почте», а также поле «подписанный» должно отображаться правильно как yourdomain.com.
Надеюсь, поможет!
Я также выбрал ту же проблему. Но я преодолел проблему, используя следующий код:
mail('maaaa@abcd.com', 'the subject', 'the message', null,'-faaa@abc.com');
Убедитесь, что последний параметр – -f с адресом электронной почты.
Вы можете добавить
$headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";<br /> mail('maaaa@abc.com', 'the subject', 'the message body in html format', $headers,'-faaaa@abc.com');
для тела сообщения html в электронной почте.
Вероятно, это добавлено вашим MTA, и вы не сказали, какой MTA вы используете.
Я бы рекомендовал отправлять почту не функцией PHP mail()
но через SMTP, возможно даже с SMTP-Auth, используя что-то вроде PHPMailer .
Узнайте, что Google говорит об этом здесь: http://support.google.com/mail/bin/answer.py?hl=ru&ctx=mail&answer=1311182.
Всего наилучшего!