WEB/システム/IT技術ブログ

xampp環境のLaravelプロジェクトでMailHogを使う

xampp環境のLaravelプロジェクトでMailHogを活用します。

時に開発環境でのメールテストは面倒です。
例えば、ローカルからメールを送信する環境を構築して、テスト用メールアドレスを作成して、メールを送信する度にメールボックスを確認するなど。
さらに、誤送信に気を使いつつなど、コストとリスクがあります。
そこでMailHogで気軽なローカル開発環境を構築してみます。

MailHogを使うと、全てのメールはローカルのMailHogメールボックスに送信されるので、テスト用のメールアドレスを用意する必要もなければ、誤送信の心配もありません。

  • Windows 11 Home
  • xampp 8.1.25
  • Laravel 9.52.0
  • MailHog v1.0.0

MailHogをダウンロード

MailHogの公式サイトから、Windows用の実行ファイル「MailHog_windows_amd64.exe」をダウンロードします。
GitHub – mailhog/MailHog: Web and API based SMTP testing

ダウンロードしたファイルを任意の場所、例えば今回は以下の場所に設置します。

C:\xampp-8.1.25\sendmail\MailHog_windows_amd64.exe

MailHogを実行

ダウンロードした実行ファイルを実行します。
以下のようにコマンドプロンプトが起動しますが、放置します。

2024/xx/xx 12:00:00 Using in-memory storage
2024/xx/xx 12:00:00 [SMTP] Binding to address: 0.0.0.0:1025
[HTTP] Binding to address: 0.0.0.0:8025
2024/xx/xx 12:00:00 Serving under http://0.0.0.0:8025/
Creating API v1 with WebPath:
Creating API v2 with WebPath:

ブラウザで「http://localhost:8025/」にアクセスすると、MailHogの管理画面にアクセスできます。

Laravelのメール設定

MailHogを利用するためには、SMTPサーバを「localhost」、ポートを「1025」にします。

Laravelの場合、環境設定ファイル「.env」を編集して、以下のように設定します。

MAIL_MAILER=smtp
MAIL_HOST=localhost
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"

実際にLaravelプロジェクトでメール送信処理を実行すると、先ほどのMailHog管理画面でメール受信を確認できると思います。
簡単で便利ですね。

B!

Comment

コメントはありません

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Monthly Archives