2013-03-26 1 views
2

Я пытаюсь использовать стандартное соединение Swiftmail SMTP для Mandrill, который расположен здесь:SwiftMail SMTP Ошибка

http://help.mandrill.com/entries/21746308-Sending-via-SMTP-in-various-programming-languages

Я получаю:

Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host smtp.mandrillapp.com [Connection refused #111]' in /home/content/15/10121515/html/includes/classes/Swift/Transport/StreamBuffer.php:259 Stack trace: #0 /home/content/15/10121515/html/includes/classes/Swift/Transport/StreamBuffer.php(64): Swift_Transport_StreamBuffer->_establishSocketConnection() #1 /home/content/15/10121515/html/includes/classes/Swift/Transport/AbstractSmtpTransport.php(115): Swift_Transport_StreamBuffer->initialize(Array) #2 /home/content/15/10121515/html/includes/classes/Swift/Mailer.php(80): Swift_Transport_AbstractSmtpTransport->start() #3 /home/content/15/10121515/html/includes/mail.php(62): Swift_Mailer->send(Object(Swift_Message), Array) #4 {main} thrown in /home/content/15/10121515/html/includes/classes/Swift/Transport/StreamBuffer.php on line 259 

Любые идеи, почему?

ответ

4

Это означает, что вы не подключаетесь к серверу Mandrill и обычно означает, что хостинг-провайдер блокирует исходящий SMTP-доступ или порт, который вы используете. Вы можете попробовать переключить порты (Mandrill поддерживает 25, 587 и 2525 без шифрования или STARTTLS и порт 465 с SSL) или обратитесь к хостинг-провайдеру, чтобы узнать, могут ли они открыть порт, который вы используете для доступа к Mandrill.

0

Имел ту же проблему, я сгенерировал новый ключ API, и он отлично справился с этим.

0

У меня такая же проблема сегодня. Нашел этот вопрос, но из-за отсутствия ответа я пишу, как я смог его исправить (я полагаю, что вы под Linux, как и я).

Видимо проблема в том, что почтового сервера не установлено. Поэтому вам нужно найти сервер по вашему выбору и установить его. Я использовал постфикс и установил его следующим образом:

sudo apt-get install postfix 

Это решило проблему.

1

Скорее всего, ваши учетные данные неверны. Повторите проверку своего ключа API как пароль и убедитесь, что вы используете правильный порт для доступа к SMTP-серверу.

Кроме того, если вы используете SwiftMailer в Symfony2, убедитесь, что вы предоставите параметры по умолчанию, как показано ниже:

В приложение/config.yml:

# Swiftmailer Configuration 
swiftmailer: 
    transport: "%mailer_transport%" 
    host:  "%mailer_host%" 
    username: "%mailer_user%" 
    password: "%mailer_password%" 
    port:  "%mailer_port%" 
    #spool:  { type: memory } 

Кроме того, предоставляют значения для конфигурации в параметрах/_dev.yml:

mailer_transport: smtp 
mailer_host: smtp.mandrillapp.com 
mailer_user: [USERNAME] 
mailer_password: [APIKEY] 
mailer_port: 587 
2

не тратьте свое время и попытаться настроить другие серверы SMTP (Gmail, mandrillapp и т.д.) для обработки исходящих сообщений электронной почты о n общий сервер. GoDaddy, Hostgator и т. Д. Заблокировали эту опцию. Я обнаружил, что оставить «localhost» в качестве хоста и избавиться от имени пользователя и пароля работал как шарм! Кажется, слишком просто, но это правда.

+0

Подтверждено - этот ответ работает. Это сработало как прелесть для меня - веб-сайт, размещенный на Go daddy. – user3158649

+0

Это сработало! Как мы можем настроить общий хост GoDaddy для отправки электронной почты с помощью mailtrap или mailgun? – Jnanaranjan

0

Для общего сервера godaddy он работает для меня.

'driver' => 'smtp', 
'host' => 'localhost', 
'port' => '587', 
'from' => array('address' => '[email protected]', 'name' =>'This is a Sign up mail'), 
'encryption' => 'tls', 
'username' => 'xxxxxxxx', 
'password' => 'xxxxxx', 
'sendmail' => '/usr/sbin/sendmail -bs', 
'pretend' => false,