Конфигурация для отправки электронной почты с Symfony Herberged на OVH

Я пытаюсь отправить электронное письмо с приложением Symfony. Моя цель - отправлять электронные письма либо с учетной записью Gmail, либо с учетной записи электронной почты сервера.

После некоторых исследований мне удалось отправить электронные письма с моего локального сервера wamp. Конфигурация следующая:

swiftmailer:
  transport: %mailer_transport%
  encryption: %mailer_encryption%
  auth_mode: %mailer_auth_mode%
  host:      %mailer_host%
  username:  %mailer_user%
  password:  %mailer_password%
  spool:     { type: memory }

mailer_transport: smtp
mailer_encryption: ssl
mailer_auth_mode: login
mailer_host: smtp.gmail.com
mailer_transport: gmail
mailer_user: myaccount
mailer_password: mypassword

Я попробовал эту конфигурацию на моем сервере OVH, но она не работает. Я просмотрел логи сервера OVH, но не нашел ни одного сообщения об ошибке.

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

Вот один пример:

swiftmailer:
  transport: %mailer_transport%
  auth_mode: %mailer_auth_mode%
  host:      %mailer_host%
  port:      %mailer_port%
  username:  %mailer_user%
  password:  %mailer_password%
  spool:     { type: memory }

mailer_transport: smtp
mailer_auth_mode: login
mailer_host: smtp.mydomain.be  
mailer_port: 587  
mailer_user: admin@mydomain.be  
mailer_password: mypassword2

1 ответ

Решение состоит в том, чтобы установить для вашего параметра mailer_transport значение "mail", чтобы SwiftMailer использовал функцию PHP mail() по умолчанию.

В противном случае вы можете указать транспорт напрямую с вашего контроллера:

    // Mail() transport
    $transport = \Swift_MailTransport::newInstance();

    // Message
    $message = \Swift_Message::newInstance()
            ->setFrom("me@domain.org", "My Name")
            ->setTo(array(
                "user@domain.org" => "User Name"
            ))
            ->setSubject("Solution for sending e-mail from OVH")
            ->setBody("...", 'text/plain')
    ;

    // My instance of mailer
    $mailer = \Swift_Mailer::newInstance($transport)
            ->send($message);

Работал для меня в плане OVH с общей электронной почтой.

Другие вопросы по тегам