Domanda

Ho appena iniziato ad imparare come utilizzare SwiftMailer e sto avendo difficoltà l'invio di un semplice messaggio di prova dal mio localhost. Di seguito è riportato il codice che sto cercando di utilizzo.

//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);

Qui è parte del mio messaggio di errore,

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

Aggiorna

ho preso a lavorare con gmail. Ho cambiato la linea Swift_SmtpTransport al seguente,

$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl')->setUsername('username')->setPassword('password');
È stato utile?

Soluzione

localhost è un alias per la macchina corrente (in questo caso, la macchina gira su PHP). Se davvero si vuole inviare la posta con localhost avete dire così:

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

... ma è anche necessario installare e configurare il proprio server di posta. Se non si sa che cosa è questa storia, vi suggerisco di utilizzare il server SMTP del provider di posta elettronica.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top