Tag: WordPress

WordPress、kusanagiでのアップデート

アップデート手順

システム構成
  • AWS 上で CloudFront + ALB + EC2 + RDS の構成で運用中。
  • SSL アクセラレーターは ALB
  • RDS は毎日スナップショットを取れる運用。
  • アップデート前には_AMI から検証用 Wordpress を別に構築する。

WordPress はアップデートに失敗すると、真っ白になったりする、と聞いたので 別サーバーを立てて検証してからアップデートを試みた方が良いと思う。

デフォルトの状態だとアップデートできなかった。

素直にアップデートはできなかった

別サーバーを立てて検証中、怖い表示になった。本番とは別にサーバーを立てて検証してて助かった。

このサイトで重大なエラーが発生しました

事前のステージング環境での確認
  1. 作業前に対象ドメインの Wordpress で非公開のページを作っておく( これを目印にする )
  2. RDS, EC2 をそれぞれバックアップから作成する
  3. EC2 が参照する RDS を新しく作ったものに変更する
  4. EC2 をロードバランサー配下に追加する
本番での作業の流れ

後述するが下記のような流れ

  1. 作業前に対象ドメインの Wordpress で非公開のページを作っておく( これを目印にする )
  2. RDS, EC2 をそれぞれバックアップから作成する
  3. EC2 が参照する RDS を新しく作ったものに変更する
  4. EC2 を新しく作ったロードバランサー配下に追加する
  5. ローカル PC の/etc/hosts を修正し、対象ドメインを新しいロードバランサーの IP アドレスに変更する
  6. 再度、アクセスし[0]で作った目印が「無い事」を確認する
  7. アップデートの検証を行う
  8. アップデートが正常にできたら EC2 をターゲットグループ内の EC2 インスタンスを新旧を入れ替える
  9. [4]で /etc/hosts で追加した箇所をコメントアウト
  10. 対象ドメインの動作を確認する
RDS のスナップショットから DB 作成

RDS、スナップショットリスト=>[システム]=>[前日のスナップショットのチェックボックスをオン]=>[アクション]=>[スナップショットを復元]

Read more...

Wordpressのサーバ移行を行った

Wordpress でサーバ移行を行った時にメールが飛ばない

背景

お名前.com 共有サーバ SD で実行していた Wordpress を AWS に移行する作業が発生した。 共有サーバ SD では/usr/bin/sendmail でメールが出せていたようだが、 引越し先の AWS EC2 では別途用意する必要があった。

SMTP は SendGrid を使い、SPF 設定を行った。こちらは別のページにまとめる。

追加したプラグイン

Check & Log Email を使うと Wordpress から任意のメールアドレスにメール送信テストができる。

WP Mail SMTP by WPForms を使うと、SMTP サーバの設定が柔軟にできる。SendGrid の設定はこのプラグインで行った。 このプラグインの設定中に WPForms Lite というプラグインが同時にインストールされるが、こちらは無効化した(メール送信には問題なかった)

WP Mail SMTP by WPForms を使って SendMail の設定をする際に、SendGrid の API キーが必要になるので用意しておくこと。

確認ポイント

メールが飛ばない可能性として

  1. フォーム用プラグインが原因の可能性

  2. SPF などの設定が足りない可能性 があるので見ていく。

  3. フォーム用プラグインが原因の可能性

クライアントが使っていたフォーム用のプラグインがMW WP Formというものだった。 多機能で美しいフォームができると思う。ただデータ移行を行った直後の送信先メールアドレスが、

hoge@www.test.com

という形だった。実際には

hoge@test.com

というアドレスであるためメールは届かない。

  1. SPF などの設定が足りない可能性

こちらは SPF の設定を追加した所、メールが飛ぶようになった。

Read more...