Я разрабатываю приложение Zend Framework, которое включает в себя простую функцию электронной почты. На моем компьютере работает версия для разработчиков, на которой установлена Ubuntu. Рабочая версия будет работать на рабочем сервере.
При попытке отправить себе тестовое письмо я получаю исключение с сообщением: «Невозможно отправить почту». Я не знаю, это проблема среды или кода. Я не использую транспорт, поэтому думаю, что по умолчанию он равен Zend_Mail_Transport_Sendmail
. Вот мой код:
public function sendtestAction()
{
$mail = new Zend_Mail();
$mail->setFrom('test@aol.com', 'Test Email');
$mail->addTo('my@email.com', 'My Name');
$mail->setSubject('This is just a test.');
$mail->setBodyText('This is only a test.');
$mail->send();
}
Обновление: Я попробовал другой подход, настроив транспорт SMTP для использования localhost:
transport = new Zend_Mail_Transport_Smtp('localhost');
Zend_Mail::setDefaultTransport($transport);
В этот раз я получил другую ошибку: «Отказ в соединении». Не уверен, что это значит. Может я что-то еще не настроил?
Обновление: Полагаю, у меня не был установлен / настроен SMTP-сервер. Этот учебник позволил мне легко запустить SMTP-сервер . Теперь оба приведенных выше примера кода работают.