概要
wordpress にて php version のサポート期限が切れるとのアラート
bitnami のイメージの場合、イメージ毎更新するほうが良いらしく、下記手順で実施することに
- 新 lightsail インスタンスを作成
- 旧 lightsail インスタンスの wordpress backup を作成
- 新 lightsail の wordpress に backup ファイルを import
手順
backup
- プラグイン「All-in-One WP Migration」を追加、有効化
- エクスポート
- 高度なオプションで下記にチェックを入れた(これはお好み)
- スパムコメントをエクスポートしない
- 投稿リビジョンをエクスポートしない
- エクスポート先: ファイル
- 600MB の .wordpress ファイルができた
Lightsail instance を作成
- AWS コンソール > Lightsail > インスタンスの作成
- Linux/Unix > wordpress > サイズを選択 > インスタンスの作成
新たに作成した instance から backup したデータを import
- AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > WordPress の認証情報 から下記手順に従って管理画面のユーザ名/パスワードを取得
- デフォルトのユーザ名二アクセス
- デフォルトのパスワードにアクセス
- パスワードは インスタンスへの接続 > ブラウザを使用する > SSH を使用して接続 > コンソールから下記コマンドを実行でも見れる
cat bitnami_application_password
- パスワードは インスタンスへの接続 > ブラウザを使用する > SSH を使用して接続 > コンソールから下記コマンドを実行でも見れる
- AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > WordPress の認証情報 > WordPress 管理者にアクセス > http://xxx.xxx.xxx.xxx/wp-admin を選択
- プラグインから下記を有効化する
- All-in-One WP Migration
- All-in-One WP Migration > インポート
backup ファイル(.wordpress)が 80MB を超える場合
- AWS コンソール > Lightsail > 作成したインスタンスを選択 > 接続 > インスタンスへの接続 > ブラウザを使用する > SSH を使用して接続
vi /opt/bitnami/php/etc/php.ini
を実行し、下記をアップロードするファイルに合わせ変更するpost_max_size = 64M
upload_max_filesize = 64M
- 私の場合は .wordpress ファイルが 600MB あったため下記のようにした
post_max_size = 800MB
upload_max_filesize = 800MB
grep "LimitRequestBody" /opt/bitnami/apache2/conf/httpd.conf
を実施して、apache 二設定がないことを確認- コマンド実施後何も表示されなければOK(表示された場合は、先ほどと同じようにサイズを修正する)
- 後は下記コマンドで、設定値の確認、サーバ再起動
sudo apachectl configtest
sudo /opt/bitnami/ctlscript.sh restart
- 再度 All-in-One WP Migration > インポート を開くと下記のように最大アップロードサイズが変わっている
![](http://e-q.work/wp-content/uploads/2024/06/image.png)
参考: https://repost.aws/ja/knowledge-center/lightsail-bitnami-wordpress-upload-limit
動作確認
- 構築が完了したらサイトにアクセスし動作に問題がないことを確認
固定IP割り振り
インスタンスに固定IPを割り振ってDNS設定をしている場合は、旧インスタンスから固定IPをデタッチ、新インスタンスにアタッチする
- AWS コンソール > Lightsail > ネットワーキング > 静的IPを選択 > インスタンスへアタッチ > 新しいインスタンスを選択 > アタッチ
Lets encrypt 証明書作成
新しいインスタンスで証明書を再作成する
sudo /opt/bitnami/bncert-tool
を実施- 参考: https://qiita.com/kooohei/items/c4ac40f4bbf366cc0e31
- 自動更新の設定が入っていることを確認
sudo crontab -l -u bitnami
から始まる cron式が入っていればOK
23 12 * * * sudo /opt/bitnami/letsencrypt/lego
旧インスタンスの Lets encrypt 証明書を失効させる
- 旧インスタンスにSSHログイン
sudo letsencrypt/letsencrypt-auto revoke --cert-path /etc/letsencrypt/live/e-q.work/fullchain.pem
旧インスタンスを停止/削除する
- AWS コンソール > Lightsail > 旧インスタンスを選択 > 停止
- 新インスタンスで動作に問題ないことを確認
- 削除
コメント