CMS等のメール確認動作には「MailCatcher」が便利だよ!
との情報を @kaburk より教えてもらったのでやってみました。
ちゃんとできてムホムホしてます。
kaburkさん、どうもありがとう_(..)_
MailCatherってなに?
■ MailCatcher
送信されたメールを、ブラウザから確認できるインターフェイスを提供しているシンプルなSMTPサーバです。
試してみた環境
- Mac 10.8.5
- MAMP
- baserCMSでやってみた
導入手順
黒い画面開いてターミナルで行います。
- $ gem install mailcatcher
- ※エラーが出るなど環境によっては「sudo」つける
- $ mailcatcher
これだけでインストール終わり。
次の「mailcatcher」を実行することで起動します。
起動したらブラウザで http://localhost:1080 で画面出ます。
php.ini を変更する
phpの設定ファイルを変更します。
利用中の環境に依るので以下はサンプル。
・例: /MAMP/bin/php/php5.5.3/conf/php.ini
以下のように書換えます。
;sendmail_path =
↓↓↓
sendmail_path = /usr/bin/env catchmail
これで準備完了。
テスト用のphpファイルひとつ作ってアクセス。
※テスト用にはこの辺が参考になります。
PHPでメールを送る - Qiita
着弾確認。http://localhost:1080/
baserCMSのメールフォームからも送信動作。
管理側にも入力ユーザーのアドレス宛にも飛びました。
メールが到着しない場合の解決策1例
mailcather までのパスを指定すると良いかもです。
ターミナルで which catchmail と打ち、出て来たパスをsendmail_pathに指定します。
※例
sendmail_path = /usr/bin/env /opt/local/bin/catchmail
この辺はダメなときはググってみてください。
導入するメリット
こんな感じの場面に良いです。
- 外部に送信されないので、間違って本番環境への送信を防げる点
- ローカル環境からは外部へメール送信させたくないとき
- 送信メールを手軽に表示して確認できる
- 存在しないメールアドレスも送信できる
- メールはほぼリアルタイムで表示されリロード不要
- 簡単コマンドで起動できる
あとがき
macの再起動時には自動で起動されてるワケではないので、コマンドで「mailcatcher」実行してから使いましょう。
mac起動時の自動起動もできるので、この辺見てやってみると良いです。
■ Mac OSXで起動時にスクリプトを実行する方法 - Qiita
こんな情報もありました。
■ ローカルでのメールの確認ができるMailCatcherをMacで使う - Shinichi Nishikawa's
MailCatcher に感謝(-∧- )