0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Route53で取得したドメインとMialgunでメール送信機能実装

Last updated at Posted at 2024-09-07

Mialgunを選んだわけ

  • 無料で1日に100件まで送信が可能。
  • 今すぐに実装したい。
    この条件に当てはまっていたのが、Mailgunでした。

よく比較されるものとして、Sendgridがあります。
こちらは、申し込み時に審査があります。申し込み後2営業日以内に本登録完了のお知らせがきます。使用できるまで最短でも翌日となるため、今回は選択しませんでした。

ドメインとは?

ドメインとは、インターネット上の住所のようなもので、Webサイトがどこにあるかを判別する情報です。インターネットの住所はIPアドレスという数字の羅列で表されますが、それを人間にも分かる文字列にしたものがドメインです。

Mailgun設定

アカウント作成

スクリーンショット 2024-09-07 8.59.44.png

無料プランで使用するため、Add payment info nowのチェックボックスは外します。formを入力後、確認メールが届くのでそこから中の管理画面に入ってください。

ドメイン作成

Mailgun標準のsandboxモードでは、承認されたメールしか送信ができないため、独自ドメインを作成します。
Send -> Sending -> Domains から右上のAdd new domain をクリックします。
スクリーンショット 2024-09-07 9.19.06.png

  • ドメイン名は任意のものを入力してください。
  • Domain reginはUSのままでいいです。
スクリーンショット 2024-09-07 9.21.33.png

レコード設定

メールの送信だけならSPFDKIMのレコードだけをRoute53に追加するだけで十分です。

ドメイン名の DNS クエリが Route53 を通じて解決され、Mailgun でのメール送信が正しく機能するようになります。このプロセスを通じて、メール配信率を向上させ、送信メールがスパムとして扱われるリスクを低減します。

SPF(Sender Policy Framework)

電子メールの送信元ドメインが詐称されていないかを検査するための仕組み

DKIM(DomainKeys Identified Mail)

送信者のなりすましやメールの改ざんを検知できるようにするもの
mailgun
Monosnap Sending: Overview - Mailgun Send 2024-09-07 09-48-15.png

Route53のホストゾーンにレコードを追加

AWSコンソールを開きRoute53のホストゾーンを表示します。
Monosnap Route 53 コンソールホストゾーン 2024-09-07 10-00-24.png

今回は既に取得してあるドメインに対して、レコードを追加します。任意のホストゾーンを選択してください。詳細画面から、レコードを作成をクリックしてください。

Monosnap refcon24.com - 詳細 2024-09-07 10-06-30.png

レコード追加

先ほど、Mailgunで表示されていた、レコードを追加します。

  • Route53画面のレコード名の欄には、Mailgun画面の各レコードに表示されているHostnameを入力してください。
  • レコードタイプは、SPFDKIMTXTを選択してください。
  • Route53画面の値には、Mailgun画面の各レコードに表示されているEnter this valueを入力してください。
Monosnap refcon24.com - レコードを追加 2024-09-07 10-11-57.png

接続の確認

右上のVerify DNS settingsから接続の確認ができます。反映まで数分かかります。接続ができないからといって焦る必要はありません。
設定したレコードがUnverifedから緑色の✅になっていたら接続が確認できたということです。
全て確認できたら、Send -> Sending -> Domainsの画面にいきましょう。✅になっていたらドメインの作成に成功したということです。

Monosnap Sending: Domains - Mailgun Send 2024-09-07 10-30-59.pngg

APIキー取得

右上のプロフィールから、API Securityを選択してください。
Monosnap Dashboard - Mailgun by Sinch 2024-09-07 10-41-24.png

Create API keyをクッリクしてください。
Monosnap Mailgun by Sinch 2024-09-07 10-41-56.png
Create Keyをクリックしてください。
スクリーンショット 2024-09-07 10.44.21.png
※API Keyは一度しか表示されませんので、必ずコピーして忘れないようにしてください。
Monosnap Mailgun by Sinch 2024-09-07 10-48-21.png

実装

既にローカルでメール送信のロジックは記述してあるとする。

envに環境変数を記述

MAIL_DRIVER=mailgun
MAILGUN_DOMAIN=Mialgunに追加したドメイン
MAILGUN_SECRET=API Key

MAIL_FROM_ADDRESS=Mialgunに追加したドメイン

ライブラリインストール

Mailgunドライバーをインストールします。

composer require symfony/mailgun-mailer symfony/http-client

Laravelにはデフォルトでconfig/servicesに以下の記述があり、envが正しく設定されていれば追加でコードは書く必要はありません。

'mailgun' => [
        'domain' => env('MAILGUN_DOMAIN'),
        'secret' => env('MAILGUN_SECRET'),
        'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'),
        'scheme' => 'https',
    ],

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?