Вопрос

Я работаю над электронными письмами Symfony 2, отправляющими с использованием Swiftmailer.

Вот моя конфигурация Swiftmailer в app/config/config.yml

swiftmailer:
 transport: gmail
 username:  myusername@gmail.com
 host:      smtp.gmail.com
 password:  mypassword

Я также настроил свой Xampp Localhost для отправки электронных писем.

У меня есть форма, в которой пользователь вводит адреса электронной почты (максимум 5 электронных писем), тема и сообщение. Для первых нескольких тестов при отправке формы отправленные электронные письма. У меня также есть электронные письма. Но после этого я неоднократно получал эту ошибку ниже.

Не удалось аутентифицировать на SMTP -сервере с именем пользователя "myusername@gmail.com", используя 1 возможные аутентификаторы 500 Ошибка внутреннего сервера - SWIFT_TRANSPORTEXCEPTION

В чем проблема здесь? Я также попытался остановить свой Xampp, а затем запустить его, но все же проблема сохраняется. Кто -нибудь знает, в чем проблема?

Благодарю вас.

Это было полезно?

Решение

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

mailer_transport: smtp
mailer_host: smtp.sendgrid.net
mailer_user: your_sendgrid_username
mailer_password: 'your_sendgrid_password'
mailer_port: 587

Учебное пособие также содержит подробную информацию о том, как правильно настроить службу почтовой почты в Symfony2 и как создавать шаблоны рассылки.

Но вы, если вы все еще хотите использовать Gmail, то правильная конфигурация:

mailer_transport: smtp
mailer_host: smtp.gmail.com
mailer_user: your_gmail_address@gmail.com
mailer_password: 'your_gmail_password'
mailer_port: 587

Другие советы

Насколько я помню host ценность игнорируется, когда transport установлен на gmail. Анкет Что касается вашей проблемы, убедитесь, что вы используете последнюю версию Swiftmailer (v4.1.5), потому что там было исправлено. От изменений:

  • Предотвратить stream_socket_client () от создания ошибки и добавить вместо этого swift_transportexception

В общем, если аутентификация не удается, исключение типа Swift_TransportException будет брошен.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top