Вы не можете отправлять почту от имени доменов, указанных выше, используя ваш почтовый сервер. В каждом из этих доменов есть что-то, что используется в DNS-отчете SPF (Sender Policy Framework), которая сообщает всем получателям почтовые разделители, которые проверяют SPF, чтобы подтвердить, что IP-адреса отправителей совпадают с SPF. Вам нужно будет отправить электронное письмо через свои SMTP-серверы, передав их самостоятельно.
пример SPF для GMAIL & YAHOO
v=spf1 redirect=_spf.google.com
v=spf1 redirect=_spf.mail.yahoo.com
Проверить, если SPF запись существует на домене с помощью этого сайта:
http://mxtoolbox.com/spf.aspx
На мой взгляд, ваш лучший вариант заключается в том, чтобы перенаправить почту на правильные SMTP-серверы на домен. Вы можете сделать это очень легко, используя PHPMailer. Если домен, заданный в параметре FROM, является частным образом управляемым доменом, тогда вы должны иметь возможность ретранслировать от имени, если нет записи SPF, и ваш IP-адрес не включен в черный список.
Сайт для проверки, если ваш отправки IP занесен в черный список:
http://mxtoolbox.com/blacklists.aspx
Пример того, как вы можете выбрать, какие настройки SMTP используются для определенного домена:
$email = '[email protected]';
$domain = explode('@', $email) ;
switch ($domain[1]) {
case 'yahoo.com':
//NOT REAL SMTP SETTINGS!
$mail->Host = 'smtp1.yahoo.com';
$mail->SMTPAuth = true;
$mail->Username = '[email protected]';
$mail->Password = 'secret';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
break;
case 'gmail.com':
//NOT REAL SMTP SETTINGS!
$mail->Host = 'smtp1.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = '[email protected]';
$mail->Password = 'secret';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
break;
}
//Rest of PHP Mailer code
Are вы передаете почту через SMTP-серверы Yahoo? Если да, то да. – Kitson88
@bub можно отправлять письма с любого почтового клиента, которого они хотят, но нужно использовать некоторые SMTP-данные. В настоящее время я не использую детали SMTP-сервера. –
@ Kitson88 В настоящее время я не использую данные SMTP-сервера. ЕСЛИ я это сделаю, чем мне придется использовать несколько данных клиента SMTP, таких как gmail, yahoo, hotmail и т. Д. –