herokuにPointDNSとSendGridを導入して設定

herokuPointDNSSendGridを導入して独自ドメインのメールアドレスから送信・受信をできるようにするための手順。

ドメインのレジストラ側の設定(お名前.com等)

お名前naviの場合、設定したい独自ドメインのネームサーバー設定は、herokuに設定したPointDNSのネームサーバーを設定する。(「dns○○.pointhq.com」を3つ)

PointDNSの設定

MXレコードを1件追加する。Mail server hostnameにはメールサーバーのホスト名を指定する。
レンタルサーバーに付属のメールサーバーのホスト名は非公開のことが多いが、

nslookup -type=mx ドメイン名

で取得できる。
GMOのメールサーバーの場合は、「mx21.gmoserver.jp」となる。

SendGridの設定

Sender AuthenticationよりDomain AuthenticationLink Brandingを設定する。
設定中に表示されるネームサーバー設定(CNAMEレコードを5件)を、PointDNSの管理画面内から追加すれば良い。

注意

SendGridClick Trackingを有効にしている場合、メール本文内のURLの2回目以降のクリックが正しく動作しない場合がある。これはherokuのSSLでHTST設定が有効となっているためである。
これを回避するためには、SendGrid内のTracking Settingsより、Click TrackingDisabledに変更すれば良い。

参考(https://soudai.hatenablog.com/entry/2019/07/16/082105)