Вопрос

Я просто начал учиться использовать Swiftmailer И у меня проблемы с отправкой простого тестового сообщения из моего Localhost. Ниже приведен код, который я пытаюсь использовать.

//Pass it as a parameter when you create the message
$message = Swift_Message::newInstance();
$message->setSubject('My subject');
$message->setFrom(array('noreply@domain.com' => 'No Reply'));
$message->setTo(array('myemail@domain.com' => 'My Name'));

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 25);
//Supposed to allow local domain sending to work from what I read
$transport->setLocalDomain('[127.0.0.1]');

$mailer = Swift_Mailer::newInstance($transport);
//Send the message
$result = $mailer->send($message);

Вот часть моего сообщения об ошибке,

Warning:  fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]:php_network_getaddresses: getaddrinfo failed: Name or service not known in /path/Swift/Transport/StreamBuffer.php

Обновлять

Я заставил его работать с помощью Gmail. Я изменил линию swift_smtptransport на следующее,

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')->setUsername('username')->setPassword('password');
Это было полезно?

Решение

localhost является псевдонимом для текущей машины (в данном случае, машина PHP работает). Если вы действительно хотите отправить почту с Localhost, вы так сказали:

$transport = Swift_SmtpTransport::newInstance('localhost', 25);

... но вам также необходимо установить и настроить свой собственный почтовый сервер. Если вы не знаете, что это такое, я предлагаю вам использовать SMTP -сервер вашего поставщика почты.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top