2017-09-25 4 views
0

Swift_mailerライブラリを使用してSymfonyフレームワークを使用して開発モードで電子メールを送信する方法を学ぶ必要があります。私parameters.ymlファイル内config.ymlファイルにconfig_dev.ymlファイルにここでdevモードでSynfony 3で電子メールを送信

これまでのところ、私が持っているものである

swiftmailer: 
transport: '%mailer_transport%' 
host: '%mailer_host%' 
username: '%mailer_user%' 
password: '%mailer_password%' 
spool: { type: memory } 

swiftmailer: 
transport: '%mailer_transport%' 
host: '%mailer_host%' 
username: '%mailer_user%' 
password: '%mailer_password%' 
spool: { type: memory } 

.... 
mailer_transport: gmail 
mailer_host: 127.0.0.1 
mailer_user: 'my_gamil_here' 
mailer_password: 'my_password_here' 

次に私のコン私は次のものがあります

public function indexAction(\Swift_Mailer $mailer) 
{ 



    $message = (new \Swift_Message('Hello Email')) 
    ->setFrom('[email protected]') 
    ->setTo('[email protected]') 
    ->setBody(
     $this->renderView(
      // app/Resources/views/Emails/registration.html.twig 
      'Emails/registration.html.twig', 
      array('name' => 'James') 
     ), 
     'text/html' 
    ); 

    $mailer->send($message); 

    return new Response('Email sent'); 
} 

} 

誰かが私が間違っていることを教えてください。電子メールアカウントには何も送信されません。

答えて

0
  1. mailer_userが設定されていることを、確認してくださいあなたのGmailのユーザー名(ホスト部分なし)にのみ。電子メール[email protected]を持っていれば、私のユーザ名はmyemailになるとしましょう。

  2. Gmailアカウントに2段階認証プロセスを使用していますか?その場合、さらにあなたはdocsに指定されている、あなたのアカウントのアプリパスワードを生成する必要があります。

Gmailアカウント2段階検証を使用している場合、あなたはgenerate an App passwordなければならないとの値として使用しますmailer_passwordパラメータ。 allow less secure apps to access your Gmail accountも確認する必要があります。

まもなく、あなたは、あなたがプレスGenerate、とメーラーを使用するデバイス(この場合はMailで)here、ログイン、選択アプリを追跡することができますし、このsnub udpz xcvt jrdpに似たアプリパスワード、とモーダルが表示されます。このパスワードをコピーして、gmailパスワード(スペースなし)として使用します。

これは役立たない場合は、チェックログもチェックします。通常、smtp serverに問題がある場合、swiftmailerはエラーをログに出力します。

+0

これは私の友人に役立ちました。どうもありがとうございました! – Kaley36

0

「mailer_transport」は、メールを送信するプロトコールです。
代わりに 'gmail'の代わりに 'smtp'を使ってみてください:)

1

メーラーホストをlocalhostとして指定した可能性もあります。このsymfonyのドキュメントhttp://symfony.com/doc/current/email/gmail.htmlを確認してください。そして、この部分に注意を払う:

Gmailの輸送は、単にSMTPトランスポート を使用し、これらのオプションを設定しますショートカットです:

encryption ssl 

auth_mode login 

host smtp.gmail.com