サイトの警告でずっと「PHPをアップデートしてください」と表示されていました。PHPが上がることでサイトのパフォーマンスも上がり、googleのサイトの評価にも影響がありあがるそうです。
一部のプラグインで古いバージョンのPHPに対応しない物も出てきたのでPHPのアップデートのために新しいインスタ巣に移行しました。

AWSのLightsailでPHPの更新は新しくインスタンスを立ち上げてその新しいインスタンスに丸ごとサイトを移動することが唯一の方法らしいです。

備忘録

  1. 新しいインスタンスの立ち上げと設定
    Lightsailで新しいインスタンスを立ち上げます。
    ターミナルから
    $ php -v
    とコマンドを入れればPHPのバージョンの確認ができます。
  2. 新しいサーバーのタイムゾーンをTokyoに設定
    ターミナルから
    $ sudo dpkg-reconfigure tzdata
    とコマンドを打てばタイムゾーンの設定ができます。
    TokyoはASIAの中にあります。
  3. 既存のサイトのバックアップ
    無料でやる方法はあるそうですが、サイト全体のデータが大きいのでプラグインのAll-In-One WP Migrationでバックアップをして、ファイルをダウンロード。
  4. ターミナルでパスワード取得
    新しいインスタンスのターミナルで下記コマンドでパスワードの取得をします。
    $ cat ~/bitnami_application_password
  5. 新しいインスタンスでWordPressにログイン
  6. All-In-One WP Migration unlimitedのインストール
    プラグインよりAll-In-One WP Migration unlimitedをインストール 
    ※有料ソフトになります。ファイルサイズによっては有料版でなくてもできるかとは思います。
  7. 移行前のバックアップファイルをインポート
    移行前のサイトのバックアップファイルをAll-In-One WP Migration でインポートします。
    この際、サイト固定ページなどの一部のページのアドレスはまだIPアドレスのままになっています。
    ここでインポートすると、アカウントやパスワードは以前のサイトのものになります。
  8. 移行前のインスタンスにアタッチされている静的IPアドレスを新しいインスタンスにアタッチ
    AWSのLightsailから元のインスタンスにアタッチされている静的IP “Staticlp-~” をデタッチします。
      
  9. ロードバランサ―も移行前のインスタンスからデタッチして移行先の新しいインスタンスにアタッチ
    AWSのLightsailのネットワーキングよりロードバランサ―を移行前のインスタンスからデタッチして、移行先のインスタンスを指定してアタッチし直します。
  10. ドメインを取得していることろ(AWSならRoute 53,お名前.com など)のAレコードを新しいインスタンスのIPアドレスに変更
    AWSのRoute 53やお名前.comでAレコードを新しいインスタンスのIPアドレスに変更します。
  11. もう一度、移行前のバックアップファイルをインポート
    ここでもう一度移行前のバックアップファイルよりサイトのインポートをいます。
    これを行うことで、各リンクがちゃんとIPアドレスから移行前と同じアドレスに置き換わります。

ここで重要なことがあって、少し前まで “wp-config.php”は 
/opt/bitnami/apps/wordpress/htdocs/wp-config.php
にあったんですがこの記事を書いている少し前(現在2021/9/27)に変更があったようでターミナルで変更をしようとしても
”/opt/bitnami/apps/wordpress/htdocs/wp-config.php’: No such file or directory.”
このようなメッセージが出てきました。
海外のサイトを調べると
/opt/bitnami/wordpress/wp-config.php
ここにファイルの位置が変更されたようです。

  1. wp-config.phpのパーミッションを変更
    ターミナルでまず
    sudo chmod 660 /bitnami/wordpress/wp-config.php
    とコマンドをうちパーミッションを一時的に変更します。
  2. FileZillaでwp-config.phpをダウンロードしてwp-config.phpファイルの中の’WP_HOME’と’WP_SITEURL’の”http”を”https”に変更
    WordPressの”設定”→”一般”でいくと
    ”WordPress アドレス (URL)”と”サイトアドレス (URL)”部分のアドレスが”http”のままになっているのでwp-config.phpファイルの一部を書き換えて”https”に変更します。
    ターミナルでできますが今回はFileZillaというソフトで接続してwp-config.phpをダウンロードして書き換えます。

    Notepad++でファイルを開き

    define( ‘WP_HOME’, ‘http://’ . $_SERVER[‘HTTP_HOST’] . ‘/’ );
    define( ‘WP_SITEURL’, ‘http://’ . $_SERVER[‘HTTP_HOST’] . ‘/’ );

    の部分を下記のように書き換えます。
    define( ‘WP_HOME’, ‘https://’ . $_SERVER[‘HTTP_HOST’] . ‘/’ );
    define( ‘WP_SITEURL’, ‘https://’ . $_SERVER[‘HTTP_HOST’] . ‘/’ );
    に書き換え、保存します。
  3. 書き換えたwp-config.phpをアップロード
    書き換えたwp-config.phpを元の場所にアップして上書きします。
  4. wp-config.phpのパーミッションを戻します。
    新しいwp-config.phpをアップしたらターミナルでコマンドでパーミッションを戻します。
    sudo chmod 640 /bitnami/wordpress/wp-config.php

これでサイトの移行が終わり、PHPのバージョンはアップされます。