MacのMAMP環境で構築したローカルホストでメール送信をする方法

MAMPでローカル環境を作ってもローカルではメールの送信ができません。かといってサーバーをレンタルしてテストするのも面倒です。

そこで今回はローカルホストでもメールを送信できるようにする方法を紹介します。

Mac環境のMAMPで、メールはgmailを使用します。

 

Postfixの設定をする

Postfixとは最初からMacにインストールされているメール転送エージェント(MTA)です。

起動するにはターミナルを起動して

postfix start

とコマンドを入力しましょう。

 

root権限で/etc/postfix/main.cfを編集

次に、一番下に以下を追加します。そのままコピペすればokです。

myorigin = gmail.com
myhostname = smtp.gmail.com
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
inet_protocols = ipv4
smtp_use_tls = yes
smtp_tls_security_level=encrypt
tls_random_source=dev:/dev/urandom

 

smtpにgmailを指定し、gmailでメールが送れるようにします。

 

sasl_passwdを作成

sasl_passwdにgmailのパスワードを保存しておきましょう。

以下をroot権限で編集します。

/etc/postfix/sasl_passwd

 

なお、gmailのパスワードはアプリパスワードを作るので、あらかじめ2段階認証を行っておいてください。

次に以下の一文をsasl_passwdに追加します。メールアドレスは自分のメールアドレスを入力してください。

[smtp.gmail.com]:587 username@gmail.com:password

 

また、root権限でのみパスワードを確認できるようにするため、権限を設定しておきます。

chmod 600 /etc/postfix/sasl_passwd

 

次に以下のコマンドでデータベースを更新します。

postmap /etc/postfix/sasl_passwd

 

最後にリロードすれば設定完了です。

postfix reload

 

あとは実際にPHPでコードを書いてメールが送られてくることを確認できれば成功です。