macのローカル開発環境(XAMPP)でメールを送る
WindowsのXAMPPを使っているときはMercury/32でメールサーバーしてたけど、LeopardにはPostfixがデフォルトで入っているのでphpなどでsendmailしたときにそれを使える。
自鯖でメールサーバーが面倒な場合は外部のSMTPサーバーを使うと良い。
ここではGmailを使ってみる。
/etc/postfix/main.cf に追記
//一番下に追記する relayhost = [smtp.gmail.com]:587 smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_mechanism_filter = plain smtp_use_tls = yes
sasl_passwd.dbを作成する。
まずはsasl_passwdというファイルを作り下記の感じでアカウント情報を書く。
[smtp.gmail.com]:587 ユーザー名@gmail.com:パスワード
作成したsasl_passwdをportmapしてpostfixで読み込む。
$ postmap sasl_passwd $ mv sasl_passed.db /etc/postfix/sasl_passwd.db $ postfix reload
以上で、ローカル開発環境でもメールが届くようになる。
注意する点として、この設定をした直後に今までプールに貯まっていたメールが一度に配信されるので、設定をする前に送信待ちメールは削除しておくこと。
適当なメモですいません。。
ちなみに/var/log/mail.logにCA証明書関連のエラーが吐き出されてしまいます。メール自体はすんなり遅れてるのですが、ちょっと気持ち悪いので要調査。