2015-12-29 3 views
5

Я не могу заставить буферизацию файлов работать с Symfony 2 и Swiftmailer.Symfony 2 и Swiftmailer не работают с наложением буферов

Это мой конфиг

# Swiftmailer Configuration 
swiftmailer: 
    transport:  %mailer_transport% 
    host:   %mailer_host% 
    username:  %mailer_user% 
    password:  %mailer_password% 
    spool: 
     type: file 
     path: '%kernel.root_dir%/spool' 
    port:   %mailer_port% 
    encryption:  %mailer_encryption% 
    sender_address: %mailer_sender_address% 

Когда я отправить по электронной почте, файл создается в приложение/золотника/по умолчанию/

тогда я бегу

php app/console swiftmailer:spool:send 

и получить этот ответ

[2015-12-29 18:54:40] Processing default mailer... 1 emails sent 

Итак, похоже, что он сработал, но ничего не отправлено, и /var/log/mail.log не показывает никаких новых писем.

Когда я конфиг установлен подкачке памяти, электронная почта работала без какого-либо вопроса, все, что я изменил было config.yml

swiftmailer: 
    spool: { type: memory } 

изменен

swiftmailer: 
    spool: 
     type: file 
     path: '%kernel.root_dir%/spool' 

Я использую sendgrid и postfix, чтобы действительно отправлять электронные письма, но я не уверен, что письма даже попадают в postfix, так что, вероятно, это не имеет никакого значения.

+0

Вы тестировали с помощью symfony 2.8 или 3.0? Это может быть внутренняя ошибка при несериализации содержимого файла электронной почты. Кроме того, несмотря на то, что вы сказали, что он работает, когда вы устанавливаете тип как память, вам также следует попробовать с gmail smtp. – felipsmartins

+0

Я еще не пробовал другую версию. Но по той же проблеме, что у меня (с памятью в командах), я подозрительно, что это проблема с транспортом, который я получаю для своей почтовой программы. В моей другой проблеме я продолжаю получать NullTransport, когда команда завершается и сбрасывает очередь. – mike

+0

Вы нашли ответ? – felipsmartins

ответ

0

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

php app/console swiftmailer:spool:send --env=prod