LoginSignup
5
4

More than 1 year has passed since last update.

AWS Lightsailで構築したWordPressで、管理者メールアドレスをデフォルトから変更するまっとうな方法

Last updated at Posted at 2023-01-01

背景

AWS Lightsailを使用してWordPressを構築したところ、管理者メールアドレスをデフォルトのuser@example.comから変更できない。正確に言うと、変更後の承認が、本来は新しいメールアドレス(自分の場合gmailアドレス)に送信されるはずだが、送信されない。(「新しいアドレスは確認が完了するまで有効化されません」のままになる)

結論は仕様。デフォルトではメール機能が有効になっていない。これを有効化するのが今回のお題。ちなみに、管理者メールアドレスを変更したいだけなら、
http://ワードプレスサイトのURL/wp-admin/options.phpにアクセスすれば書き換えられる。ただ、メールが機能しないと他にもいろいろ面倒そうなので、有効化する。

大まかな流れ

公式で手順を公開している。ただこの通りに行かないのとわかりにくいので、できるだけシンプルに記載しておく。

  1. Amazon SESで、SMTPサーバのアドレスやTLS情報、SMTPクレデンシャルを確認する
  2. Amazon SESで、新しい管理者メールアドレスを、検証済みにする
  3. WordPress側で、プラグインを使ってSMTPを有効化し、SMTPサーバの情報を設定する

Amazon SESとは

AWS内で使用できるメールサービス。特に何もしなくてもデフォルトで自分が使用できるSMTPサーバは存在し、その情報はすぐ入手できる。
ただし、最初はSandbox状態になっていて、

  1. 検証済のID(ドメイン、メールアドレス)にしかメールできない
  2. メール送受信の量に制限がある
    という制約がある。Sandboxから出すこともできるが、悪用される恐れもあるため、今回はそのまま使用する。

SMTPサーバのアドレスやTLS情報、SMTPクレデンシャルを確認する

SESのページから、「SMTP設定」に進む。ここにSMTPサーバのアドレスは表示されているので記録しておく。
「自分の SMTP 認証情報を作成する」を選択する。ここでは基本的に認証用にユーザを1つ作成することになる。ユーザ名はデフォルトでよい。作成後ユーザ名とパスワードを表示させて記録するか、CSVでダウンロードしておく。

新しい管理者メールアドレスを検証済みにする

SESのページから、「検証済みID」->「IDの作成」と進む。
IDタイプを「Eメールアドレス」として、設定したい管理者メールアドレスを指定する。ID作成すると、対象のアドレスに確認メールが飛ぶので、URLをクリックしてVerifyしておく。
上記リンクの公式では、いきなりドメインの検証となっているので混乱する(情報が古い?)が、実際にはメールアドレスタイプのIDを検証しないといけないということ。

WordPress側でSMTPを有効化

WP SMTP Pluginを有効化する。自分は最初からインストールはされていた。
SMTP Mailerとしては、Other SMTPを選択する。選択肢にAmazon SESもあるが、Pro限定(ライセンス購入が必要)となっている。実際にはProでなくても、Other SMTPとすることで使用可能。
次の「Configure Mailer Settings」で、先ほど記録したSMTPホストや、SMTPユーザ名、パスワードを入れる。Fromのメールアドレスはなんでもよいはずだが、いったん「admin@<自分のドメイン>」としている。
設定後、WP Mail SMTPプラグインの設定画面から、Email Testを選び、自分のgmailアドレス宛に送信すると、無事送られた。

所感

相変わらずAWS関連はマニュアルが整備されているけど、わかりにくい…

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4