質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.92%

【Laravel】SSL環境でのメール送信ができない。

受付中

回答 0

投稿

  • 評価
  • クリップ 0
  • VIEW 381

rabbit

score 7

【Laravel】SSL環境でのメール送信ができず、どうしても解決できない問題がありましてご質問させていただいています。

外部SMTP(さくらのメールボックス)を使ってhttp通信では問題なくメール送信できていたのですが、httpsになってから

Connection could not be established with host www○○.sakura.ne.jp :stream_socket_client(): unable to connect to tcp://www○○.sakura.ne.jp:587 (Connection timed out) 

というようなエラーがでるようになりメールが送信できない状態になりました。
色々な記事を参考に自己証明等もテストしてみたのですがうまくいかず。。

どうすればいいか分かる方がいらっしゃいましたら、ご教授いただけませんでしょうか?

ポートはtelnetで疎通確認済です。

【環境】
CentOS
PHP7.2
Laravel 6.18

【.env】
.env
MAIL_DRIVER=smtp
MAIL_HOST=www○○.sakura.ne.jp
MAIL_PORT=587
MAIL_USERNAME=○○@○○.com
MAIL_PASSWORD=○○
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=○○@○○.com
MAIL_FROM_NAME="${APP_NAME}"

【メール設定】
dd(\Config::get('mail'));

array:11 [
"driver" => "smtp"
"host" => "www○○.sakura.ne.jp"
"port" => "587"
"from" => array:2 [
"address" => "○○@○○.com"
"name" => "Laravel"
]
"encryption" => "tls"
"username" => "○○@○○.com"
"password" => "○○"
"sendmail" => "/usr/sbin/sendmail -bs"
"markdown" => array:2 [
"theme" => "default"
"paths" => array:1 [
0 => "/var/www/laravel/resources/views/vendor/mail"
]
]
"log_channel" => null
"stream" => array:1 [
"ssl" => array:3 [
"allow_self_signed" => true
"verify_peer" => false
"verify_peer_name" => false
]
]
]

【エラーログ】
[2020-06-23 08:28:19] local.ERROR: Connection could not be established with host www○○.sakura.ne.jp :stream_socket_client(): unable to connect to tcp:/www○○.sakura.ne.jp:587 (Connection timed out) {"exception":"[object] (Swift_TransportException(code: 0): Connection could not be established with host www○○.sakura.ne.jp :stream_socket_client(): unable to connect to tcp://www○○.sakura.ne.jp:587 (Connection timed out) at /var/www/laravel/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php:269)
[stacktrace]

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • yuki84web

    2020/06/23 15:03

    SSLでの送信ポート指定は本当に587?他のレンタルサーバーだと異なったりしますけど…

    キャンセル

  • rabbit

    2020/06/23 16:52

    ありがとうございます。下記ページを参考に
    https://help.sakura.ad.jp/206206021/
    465番ポートは利用できませんとのことでしたので、
    25、587とテストしたのですがうまくいかずで。。

    キャンセル

  • scsi

    2020/06/23 21:20

    587ならstarttlsではないですか?

    キャンセル

  • rabbit

    2020/06/23 22:47

    コメントありがとうございます。
    【envファイル】
    MAIL_ENCRYPTIONにstarttlsを指定し、
    tinkerにて

    Mail::raw('test mail',function($message){$message->to('○○@○○.com')->subject('testMail');});

    でテストした所

    Swift_TransportException with message 'Connection could not be established with host www○○.sakura.ne.jp :stream_socket_client(): unable to connect to starttls://www○○.sakura.ne.jp:587 (Unable to find the socket transport "starttls" - did you forget to enable it when you configured PHP?)'

    とのエラーが表示されメール送信に失敗してしまいます。。

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.92%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る