ScotchboxのPHPでMailCatcherを使う

ScotchBox3.0でMailCatcherを動かす

MailCatcherは、擬似的なSMTPサーバで、プログラムから送信されたメールをキャッチしてローカルで閲覧できる便利な開発用ツールです。
VagrantのScotchbox3.0で試そうとしたら、php.iniの設定がうまくいかなくてハマったのでメモ。

起動

$ vagrant ssh

SSHログインしたら、そのまま

$ mailcatcher --http-ip=0.0.0.0

で、起動します。
ここまでは、ScotchBoxのマニュアル通り。

PHPで使うには、php.iniの設定が必要

php.iniの設定

catchmailのパスを調べる

さきにパスを調べておきます。

$ which catchmail
/home/vagrant/.rbenv/shims/catchmail

MailCatcherのパスを調べる。そして覚えておく。
私の環境では
/home/vagrant/.rbenv/shims/catchmail
でした。

php.iniの設定

php.iniの設定を行います。(php.iniは、/etc/php/7.0/apache2/php.iniにありました)

$ sudo vi /etc/php/7.0/apache2/php.ini
php.ini
SMTP = 0.0.0.0
smtp_port = 1025
sendmail_path = /home/vagrant/.rbenv/shims/catchmail --ip 0.0.0.0

で、apache再起動

$ sudo service apache2 restart

これで、使えるようになりました。
使い方とかは、いろいろなところで紹介されているので検索してください。

参考資料

A Vagrant LAMP/LEMP Stack for Beginners That Just Works
I'm trying to check outgoing email in a local environment using WordPress and the plugin C
mailcatcher php.ini config with mailcatcher installed via rvm
[紹介元] PHPタグが付けられた新着投稿 – Qiita ScotchboxのPHPでMailCatcherを使う

関連記事