vdeep

*

vdeepはプログラミング、IT、Web技術、ライフハックの事などなどを管理人okutaniがつぶやくブログです

LaravelでMailCatcherを利用してテストメールを送信する

      2017/01/30

LINEで送る
Pocket


こんにちは、okutani(@okutani_t)です。今回は、Laravelで便利にテストメールをおこなう「MailCatcher」の使い方を解説します。

この「MailCatcher」はLaravel以外でも利用できるので、仕組みが分かればRuby on Railsなどでもかんたんに使うことができます。

公式サイトは以下です。

LINKMailCatcher

本記事は、以下の記事を参考にしています(というより、ララ帳さんまんま……です )。

参考MailCatcherを使ったメール送信テスト – ララ帳

MailCatcherを動作させるにはRuby1.8以上が必要です。Mac・linuxではrbenvを使ってRubyの導入ができます。以下を参考にしてください。

rbenvを使って複数バージョンのrubyを導入する
こんにちは、okutani(@okutani_t)です。rubyの導入方法のひとつに『rbenv』というツ...
2016-06-25 16:11
はてブ

Windowsは、以前Sassの導入時にrubyのインストールについて解説しています。導入部分だけでも参考にしてみてください。

【Win・Mac】Sassを導入&初めてScssを使ってみる
こんにちは、okutani(@okutani_t)です。今まで、Webコーディングの際はCSSでちょこちょ...
2015-11-28 18:32
はてブ

前準備が済んだら、MailCatcherのインストールから、使い方まで順を追ってみていきましょう。

スポンサーリンク

MailCatcherのインストール

MailCatcherはRubyのRubyGemsで管理されているので、gemコマンドで導入します。

以下コマンドをターミナル(もしくはコマンドプロンプト)から入力。

$ gem install mailcatcher

導入確認。

$ mailcatcher --version
mailcatcher 0.6.5

MailCatcherが導入されました。

MailCatcherの起動

次のコマンドでデーモンとして実行します。

$ mailcatcher

MailCatcherは、「SMTP → IPアドレス127.0.0.1、ポート番号1025」「Web画面 → IPアドレス127.0.0.1、ポート番号1080」として立ち上がります。

Web画面はポート1080で確認できます。以下のURLでブラウザでアクセスしてみましょう。

http://127.0.0.1:1080

もし、Vagrantなどの仮想環境を利用している場合は「http://仮想環境のIP:1080」などでアクセスできます。

次のような画面が出ればOKです。

MailCatcherがきちんと立ち上がっていることが確認できました。

メール送信先の設定

LaravelでMailCatcherを利用できるように設定していきます。

.envファイルの該当箇所を、次のように変更。

MAIL_DRIVER=smtp
MAIL_HOST=127.0.0.1
MAIL_PORT=1025
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=your_address@gmail.com
MAIL_FROM_NAME=your_name
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_PRETEND=false

これで、Laravelから送信するメールがMailCatcherに届くようになります。

tinkerでテストメール送信

以下のコマンドでメールを送信してみましょう。

$ php artisan tinker
Psy Shell v0.4.4 (PHP 5.6.24 — cli) by Justin Hileman
>>>

続けて以下を入力。

Mail::raw('Test Mail', function($message) { $message->to('somebody@example.com')->subject('test'); });

これで、コンソール上に1が返ってくればOKです。

MailCatcherのWeb画面を確認してみましょう。

上図のように、テストメールが送られていることが確認できました。

もし、MailCatcherを停止させたい場合は、Web画面右上の「Quit」をクリックすればOKです。

MailCatcherはIPとポート番号さえ一致させれば、Laravel(PHP)以外のツールや言語で利用できます。

メールは環境によってテストしにくかったりするので、MailCatcherのような便利ツールを使って効率よく開発できるとよいですね。

Laravelでテストメールを送るときの参考になれば幸いです。

LINEで送る
Pocket

okutani (okutani_t) のヒトコト
MailCatcher、地味に便利です。というか、めちゃくちゃ便利です。。今後ばんばん使っていこうと思います。

Web開発のお仕事を募集しています

フリーランスのエンジニアとして、Webシステム開発のお仕事依頼を随時募集しています(現在の業務量によってお受けできない場合もあります)。

Ruby on Rails」「JavaScript(jQuery, Reactなど)」「HTML + CSS」を用いたシステム開発、「Heroku」等を用いたサーバー構築・運用、「Git」や「GitHub」を利用したソーシャルコーディングなどに対応しています。

ご依頼を検討している方は、下記リンク本ブログからのお問い合わせ、もしくはokutaniのポートフォリオからご連絡ください。

LINKお問い合わせ

LINKokutani's Portfolio


 - Laravel

スポンサーリンク

PC用AdSense

PC用AdSense

  こちらもどうぞ

vdeepのトップページへ戻る画像です。風船の形をした島を女の子が掴んでいます。