Sto sviluppando un'applicazione di zend framework che include una semplice funzione di posta elettronica. La versione di sviluppo è in esecuzione sul mio computer, che esegue Ubuntu. La versione di produzione verrà eseguita su un server di produzione.Come inviare un'e-mail usando Zend_Mail, sendmail e localhost?
Quando si tenta di inviare una e-mail di prova a me stesso, ottengo un'eccezione con il messaggio: "Impossibile inviare la posta". Non so se si tratta di un problema di ambiente o di un problema di codice. Non sto utilizzando un trasporto quindi penso che sia impostato per default su Zend_Mail_Transport_Sendmail
. Qui è il mio codice:
public function sendtestAction()
{
$mail = new Zend_Mail();
$mail->setFrom('[email protected]', 'Test Email');
$mail->addTo('[email protected]', 'My Name');
$mail->setSubject('This is just a test.');
$mail->setBodyText('This is only a test.');
$mail->send();
}
Aggiornamento: Ho provato un approccio diverso impostando il trasporto SMTP per utilizzare localhost:
transport = new Zend_Mail_Transport_Smtp('localhost');
Zend_Mail::setDefaultTransport($transport);
ho ottenuto un errore di diverso questa volta: "Connection refused" Non è sicuro cosa significa. Forse non ho ancora impostato qualcosa?
Aggiornamento: Immagino di non aver installato/installato un server SMTP. This tutorial made it really easy for me to get an SMTP server up an running. Adesso entrambi gli esempi di codice sopra funzionano.
I tuoi registri smtp mostrano qualcosa? –
Dove trovo quelli? – Andrew
Su Ubuntu, controlla/var/logs/ –