2016-10-20 2 views
2

Я использую Symfony 3.0 Версия: config.ymlSwiftmailer не работает в localhost?

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

Parameters.yml

mailer_transport: smtp 
    mailer_host: localhost 
    mailer_port: 25 
    mailer_user: [email protected] 
    mailer_password: abc123 

я запускаю следующую команду для отправки почты:

php Console Swiftmailer:spool:send 

обработка почтового отправления по умолчанию .... 0 отправлено сообщений

php Console Swiftmailer:email:send 

отправлено 1 электронная почта

app.ERROR: Произошло исключение при промывке очереди электронной почты: Соединение не может быть установлено с хост 127.0.0.1 [попытка была сделана доступа к сокету таким образом запрещено по его разрешениям доступа. # 10013]

Я также попробовать с помощью кода:

$message = \Swift_Message::newInstance() 
        ->setSubject('Hello Email') 
        ->setFrom('[email protected]') 
        ->setTo('[email protected]') 
        ->setBody('good jb');    
      $this->get('mailer')->send($message); 

Но я не получил каких-либо исключений/ошибка/сообщение.

Любой может предложить мне, что я могу сделать? Спасибо

+0

php версия? в журналах есть больше информации об отладке? –

ответ

1

Для тестирования электронной почты при разработке, я предлагаю вам использовать mailcatcher. Установка для этого инструмента:

mailer_transport: smtp 
mailer_host: localhost 
mailer_port: 1025 

И тогда вы можете проверить электронную почту в вашем браузере: (с настройками по умолчанию)

http://127.0.0.1:1080 
+0

его не работает для меня. –

+0

Почему «его не работает для меня»? – COil

0

Вы можете иметь не то разрешения чтобы получить доступ к адрес электронной почты с вашим приложением. Вам нужно будет изменить это, или вы можете использовать Gmail.

Посмотрите здесь: доступ How to Use Gmail to Send Emails

Грант для вашего приложения: Less Secure Apps Access

0

config.yml

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

Parameters.yml

mailer_transport: smtp 
    mailer_host: smtp.office365.com 
    mailer_port: 587 
    mailer_user: [email protected] 
    mailer_password: 
    encryption : tls 

Я установил следующую настройку в обоих файлах. Теперь это работает для меня с локальным окружением.