Я думал, и у меня есть вопрос относительно нескольких адресов электронной почты и почта функция.
Возможно ли, чтобы PHP отправлял электронное письмо конкретному smtp
сервер; например, если у меня есть два адреса.
конфигурация
smtp.fakecompany1.co.nz
Предполагаемый получатель
killrawr@fakecompany1.co.nz
(smtp.fakecompany1.co.nz
)killrawr@fakecompany1.co.nz
(smtp.fakecompany2.com
)В настоящее время, если smtp
из предназначенных recipient
(Smtp.fakecompany1.co.nz) настроен тогда recipient
от предполагаемого smtp
(Smtp.fakecompany1.co.nz) получит электронную почту; но мой вопрос в отношении того, возможно ли выбрать smtp
(Smtp.fakecompany1.co.nz) и отправить Эл. адрес, не требуя аутентификации в РАЗНОМ smtp
(Smtp.fakecompany2.com).
схема электронной почты http://iforce.co.nz/i/s4dgfswc.ghe.png
TL; DR я могу отправить электронное письмо от smtp.fakecompany1.co.nz
в smtp.fakecompany2.com
(учитывая, что электронная почта существует на обоих серверах), без изменения сведений об аутентификации на основном сервере (из-за технических проблем с Gmail).
Вы можете SMTP с PEAR :: Mail вместо использования mail()
, Смотрите этот вопрос для примера: как использовать почту php pear
Вот модифицированный пример, который я скопировал из ссылки Q:
require_once "Mail.php";
$from = "<test@example.com>";
$to = "<testing@example.com>";
$subject = "Hi!";
$body = "Hello world";
$host = "smtp.fakecompany2.com";
$port = "465";
$username = "<testtest@example.com>";
$password = "testtest";
if (YOUR HEADER CHECK HERE) {
$host = "smtp.fakecompany1.co.nz";
}
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
Других решений пока нет …