LightsailのWordPressでメールを送信するための方法について整理した(2通りあり、プラグインによる方法が一択)

AWS
AWS
この記事は約3分で読めます。

LightsailのWordPressでは、デフォルトでメールが送信できません。WordPressの管理ユーザーのメールアドレスを変更しようとしましたが、新規アドレスにメールが送信されず、メールアドレスの変更ができませんでした。

メールを送信する方法について、ドキュメントではSESを使用する方法が紹介されていましたが、それ以外の方法がないのか調べてみました。

まとめ

メールを送信する方法は大別して 2 つあり、作り込みは不要なため基本的にプラグイン一択。プラグインで使用できるメールプロバイダーは様々。

  • WP Mail SMTP プラグインを利用する
  • Lightsailに個人用のメールサーバを立てる

SES + WP Mail SMTP プラグインを使用する方法

公式ドキュメントで紹介されている方法です。

Amazon Lightsail の WordPress で E メール を有効にする | Lightsail ドキュメント

SESのSMTPサーバを設定し、デフォルトでインストールされているプラグインを利用します。

注意点
  • SES開始時、サンドボックスという制限が課された状態
    • サンドボックスは、確認済みのアドレスやドメインにのみメールを送信可能
    • 任意のアドレスにメールを送信するには、サンドボックスから移動する必要あり
  • メールクライアントがないため、メール受信はGmailのように確認できない
    • 受信ルールを設定し、設定したアクションに従う
    • ルールでAmazon SNSにPublishする設定にし、Gmailなどで確認することは可能っぽい
設定の流れ
  • SESにSMTP認証情報作成

    Eメールを送信するために使用するクレデンシャルを生成

  • SESのドメイン検証

    LightsailのWordPressで使用しているドメイン。LightsailのDNSゾーンで管理している場合、各種レコードを追加する

  • メールを送信する宛先のメールアドレス検証

    任意のアドレスの送信したい場合、サンドボックスから移動する

  • WP Mail SMTP プラグインを設定

この方法で実際に設定した記事が以下です。

メールクライアント + WP Mail SMTP プラグインを使用する方法

例えば、 yahoo や Gmail などメールクライアントとプラグインを使用してメール送信ができるようになります。SMTPのホストはメールクライアントのサイトに記載されています。

SESを使用しない場合と比較し、設定が楽です。設定方法は、「(使用したいメールクライアント) WP Mail SMTP」などで検索すれば豊富に出てきます。

Lightsail自体にメールサーバを作成する方法

せっかく便利なプラグインがあるので、この方法を利用するメリットがありませんでした。強いてあげるならメールサーバの勉強くらいでしょうか。LightsailはEC2と同じく25番ポートからのメール送信が制限されているため、25番ポートを使用する場合は解除申請から必要です。

Lightsail インスタンスからポート 25 の制限を削除する | AWS re:Post
Amazon Lightsail インスタンスからポート 25 経由で E メールを送信するのに問題があります。

結論:どの方法がベターか

Lightsail自体にメールサーバを導入するのは負荷の観点からも推奨できないと思うので、プラグインを利用するのがベターと考えます(何より簡単ですし。)。

タイトルとURLをコピーしました