2009-04-10 2 views
9

Так что у меня сложилось впечатление, что плохие вещи произойдут, если я не буду использовать Zend_Mail_Transport_Smtp при отправке большого количества писем. Проблема в том, что ... Я не могу понять, как ее настроить. Я использую электронную почту Google Apps для своего домена. Поэтому, чтобы получить доступ к моей электронной почте, я перейду на mail.mydomain.com, который приведет меня на страницу входа в Google.Как использовать Zend_Mail_Transport_Smtp с размещенными Google Apps?

Это код, который я использую, но он не работает.

$config = array('ssl' => 'tls', 'port' => 587, 'auth' => 'login', 'username' => '[email protected]', 'password' => 'password'); 
$smtpConnection = new Zend_Mail_Transport_Smtp('mail.mydomain.com', $config); 
  • Использование «mail.mydomain.com» я получаю «тайм-аут подключения» ошибка (что заставляет меня думать, его неправильно, что нужно использовать.
  • Использование «smtp.mydomain.com» I получить «не удалось открыть сокет» ошибка.

Что я делаю неправильно?

+0

Вы можете сообщить об ошибке. – Till

+0

Код выглядит нормально, вы получаете сообщение об ошибке/исключение? –

ответ

13

Поскольку вы посылаете электронную почту через Gmail, вы должны использовать «smtp.gmail.com», а не ваш домен.

$config = array('ssl' => 'tls', 'port' => 587, 'auth' => 'login', 'username' => '[email protected]', 'password' => 'password'); 
$smtpConnection = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config); 
0

Дополнительная информация. Проверьте порт с помощью сканера портов на удаленном конце, которые открыты, выполните проверку, если они ответят на пакеты, иногда порт 25 не работает, поэтому по электронной почте не удается, а также SSL или TLS.

$config = array(
    'ssl' => 'ssl', //TLS = tcp:// use port 25  
        //SSL = ssl:// use port 465 or 587 
    'port' => 465, 
    'auth' => 'login', 
    'username'=> 'x', 
    'password'=> 'b/c', 
); 
$tr = new Zend_Mail_Transport_Smtp('email-smtp.us-east-1.amazonaws.com', $config); 
Zend_Mail::setDefaultTransport($tr);