• ご返信ありがとうご
    ざいます。 回答通りに.envの記述を修正し、パスワ...
  • guest 
    ご返信ありがとうございます。
    回答通りに.envの記述を修正し、パスワードリセットのメールを送ってみたところ、エラー画面になり、以下の文言が出てきました。

    「ホストlocalhostとの接続を確立できませんでした:stream_socket_client():tcp:// localhost:1025に接続できません(接続が拒否されました)」

    ちなみにですが、.envの記述内容変更に伴い、Laravelのconfig配下にあるmail.phpの内容(MAIL_HOSTをlocaohostへ、MAIL_PorTを1025に)も変更しました。

    やはりどこか記述内容に間違いがあるのでしょうか?
    回答 1

    chacha8888 
    講師からの回答
    2転3転して申し訳ありません。
    差し支えなければ、.envの設定とmail.phpを頂けますと幸いですが、Laravelでメール送信をする場合
    複数の方法があります。詳細は以下のURLを参照してみてください。

    ・参考:Laravelのmailableクラスでメール送信を行う[導入/入門編]
    https://www.ritolab.com/entry/38#aj_9

    ・参考:laravel5.1でメール送信する
    https://www.messiahworks.com/archives/12243

    mailableクラスの作成等については既に設定されているという前提で考えますと、以下2点について確認頂けますと幸いです。
    メールドライバーは複数ありますが、今回はSMTPでメール送信を行いますのでメールドライバーはsmtpとしています。
    メールドライバーの設定について認識に相違があれば、ご指摘頂けますと幸いです。

    ・「laravel/config/mail.php」
    【'driver' => env('MAIL_DRIVER', 'smtp')】となっていることを確認します。

    ・laravel/.env
    mail.phpで「MAIL_DRIVER=smtp」となっていることを確認します。いただいたメッセージから判断しますとメールポートの設定に誤りがある可能性があるかと思われます。申し訳ありませんが、25で設定して送信ができるかどうかご確認頂けますと幸いです。
    ------
    MAIL_DRIVER=smtp
    MAIL_HOST=localhost
    MAIL_PorT=25
    MAIL_USERNAME=null
    MAIL_PASSWorD=null
    MAIL_ENCRYPTION=tls
    ------

    よろしくお願いいたします。

    guest 
    回答ありがとうございます。
    アドバイス通りに記述内容を変更してみましたが、以下のような前回同様のエラーが出ました。

    Connection could not be established with host localhost :stream_socket_client(): unable to connect to tcp://localhost:25 (Connection refused)

    .envとmail.phpの記述は以下の通りです。

    .envの記述

    MAIL_DRIVER=smtp
    MAIL_HOST=localhost
    MAIL_PorT=25
    MAIL_USERNAME=null
    MAIL_PASSWorD=null
    MAIL_ENCRYPTION=tls

    mail.phpの記述

    'driver' => env('MAIL_DRIVER', 'smtp')
    'host'=> env('MAIL_HOST', 'localhost')
    'port'=>env('MAIL_PorT', 25)

    個人的な予測なのですが、今回はawsのメールサーバーを使ってメール送信をしようと思っているので、MAIL_HOSTの部分にはlocalではなく、awsのメールサーバーのElastic IPアドレスを記述するのが正しいのではと思うのですが、いかがでしょうか?