その他

Amazon Lightsail + WordPress に移行②(データ移行・SSL化まで)

この記事は別記事の続きになります。最初の記事を見ていない方は以下を御覧ください。
あくまでも私の行った記録ベースなので、時が経つに連れ変更され色々なチャレンジ要素が出てくると思います。
参考にされる場合は、自己責任で何卒お願いいたします。。

レンタルサーバで運用していた当サイトを、AWS Lightsailを使いサイト移行をすべくWordPressを立ち上げた後の内容になります。

移行前にPHPとWordPressのバージョンを近づける

一般的に、PHPとWordPressのバージョンを新旧合わせておくとトラブルが少ないと言われています。色々検索しても様々な方が大体そう書いてます。
LightsailでWordPressを構築する際は、前記事の画像でもあったようにバージョンを選択できません(記事書いてる時点で5.8.3-3 PHPは7.4.27)、
移行元のPHPとWordPressが古い場合は事前にアップグレードしてバージョンをできる限り近づけておけると安心と思います。ちなみに私は忘れていてアップグレードしませんでしたが、結果問題なかったです。

旧サイトのデータをプラグインを使って全てエクスポート(バックアップ)

WordPressのプラグイン All-in-One WP Migration を使って、サイト全体のバックアップを数クリックでエクスポートします。

旧サイトにプラグインが無い方はインストール&有効化をしてください。

インストールし有効化まで出来たら、WordPress管理画面の左に表示されます。
そうしたら、下の画像の通り、All-in-One WP Migrationプラグインの「エクスポート」から「ファイル」を選択しサイト全体のデータを.wpress形式のファイルとしてエクスポート(ダウンロード)します。

エクスポートについて注意点が2つあります。
 ・ファイルサイズを確認すること
   → 80MBを超えるとAll-in-One WP Migrationの有料版を購入する必要が出てきます。。
 ・何度もエクスポートを押さないこと
  → エクスポートする中間データがどんどんサーバ内に溜まっていきます。。

もし、100MB位なら、下の画像のような高度なオプションをクリックして、メディアライブラリをエクスポートしないを選択してサイズがどれくらい圧縮できるか見てみてください。手動移行が出てしまいますが、まだ比較的ラクには移行できます。。

新サイトのデータをプラグインを使って全てインポート(リストア)

新たにLightsailで立ち上げたWordPressの管理画面を開いてください。
最初から All-in-One WP Migration はインストールされているので、有効化(下の画像のようにactivateを押す)してください。

下の画像のように、左のメニューに All-in-One WP Migration が現れますのでインポート(import)を押すと下の画像が出てきます。
赤枠のところをよく見ると、80MBまでしかアップロードできないと記載が出ています。
先程エクスポートしたファイルが80MB以下なら問題ありませんが、サイズがより大きいと上限エラーが出てしまいます。
以前は、All-in-One WP Migration File Extensionがあり、512MBまでアップロードできたようですがもう有料版のプレミアム購入のページしかなさそうです(2022-2-12)。。 色々探すとリスクはありますが他の方法があったのはあったので、最後に少しご紹介します。

続けますと、旧サイトのエクスポートファイルを画像の赤枠のところにドラッグアンドドロップするか、クリックしてファイルからエクスプローラー選択するかしてみてください。
インポートが完了しページ更新すると、旧サイトがそのまま現れると思います!! とても簡単で素晴らしいプラグインだと改めて思いました。

パーマリンクの更新

サイト移行後にリンク切れを起こさないようにするために、パーマリンクの更新を行います。
パーマリンクとは Webサイトのページ毎(記事毎)に設定しているURL のことです。
WordPress管理画面の設定メニューからパーマリンクを押すと下の画像のように、パーマリンク設定画面になります。何も入力しなくてよいはずなので、ページの一番下、変更を保存ボタン を2回クリックしてください。

静的IPとご自身のサイト用独自ドメインの紐付け

前の記事に書きましたとおり、Lightsailのインスタンスに静的IP(固定グローバルIPアドレス)をつけました。このIPアドレスを直接URLに打って動作確認をしていました。
実際、移行する際は元々使っているサイトの独自ドメインがあるはずで、そのドメイン管理としてIPアドレスを旧サイトから、新サイト(=Lightsailの静的IP)に変更しておく事が前提です。
旧サイトがどんなサーバで動いているか、ドメイン管理をどこで行っているかで操作方法が異なるのでここでは割愛します。旧サイトで利用利用しているレンタルサーバなどでドメイン管理をどうしているか確認してみてください。

サイトのSSL化

SSL化は色々な方法があると思いますが、色々と調べた中で最速でSSL化できる手法で対応します。
コンソール画面を開きますので、前記事でも載せたどちらかのボタンを押します。

以下のコマンドを打ちます

sudo /opt/bitnami/bncert-tool

打つと、アップデートできるバージョンがあるからダウンロードしない?といった選択肢が出ますが n と打ちます。

その後、以下の画像のように入力を求められるので、自分のサイトのドメインを入力します。
当サイトだと samurai-computer.com です。

ドメインを入力すると、www のサブドメインが付いたパターンも追加しておくか?と選択肢がでるので y とします。(画像は、別作業しているときのものなので samurai-computer.com ではないですが気になさらず)

まだ、静的IPとドメインの紐付けが完了していなかった場合、以下のような警告が出て途中で止まっていまいます。
その際は、今一度ドメインとネームサーバの確認を行ってください。

その後も選択肢は続きます。当サイトはHTTPS接続のみ、WWW.サブドメインがきたらWWWがないドメインでアクセスしてもらいたいので、まずはじめの HTTPアクセスがきたらHTTPSにリダイレクトしますか?は y です

Enable HTTP to HTTPS redirection [Y/n]:

次は、wwwが付いていないURLでアクセスしてきたら、wwwをつけたURLにリダイレクトしますか?なので n です

Enable non-www to www redirection [Y/n]:

次は、逆の話です。wwwがついているURLをついていないURLにリダイレクトしますか?なので、 y です

Enable www to non-www redirection [Y/n]:

その後、変更箇所の確認が出ます。再度、自分が考えていたとおりの選択肢を入力しているか確認してください
違う箇所があれば、最後の これらの変更に同意しますか?で n を入力するとドメインから再度入力になります。
問題なければ、 y を入力して続けましょう。

Changes to perform ~ Do you agree to these changes? [Y/n]:

その後、サーバが一時的に止まり色々処理が走ったあと、メールアドレスの入力を求められます。入力したからと言って確認メールなどは何も送られてきませんでした。間違えないよう、きちんと有効なアドレスを入力しましょう。

E-mail address []:

最後、改めて同意の選択肢がでるので y を入力します

Do you agree to the Let's Encrypt Subscriber Agreement? [Y/n]:

少し待ち、”Success“と表示されたら完了です。 サイトを再起動するために以下コマンドを打ちましょう。

sudo /opt/bitnami/ctlscript.sh restart apache

サイトを見て動作確認します。以下の4パターンにアクセスしてみて、全て https://ご自身のサイトドメイン でアクセスされていたら、成功です。

・ http://ご自身のサイトドメイン
・ http://www.ご自身のサイトドメイン
・ https://ご自身のサイトドメイン
・ https://www.ご自身のサイトドメイン

また、サイトのURLで下の画像のように この接続は保護されていますと出ればOKです。

WordPressのアドレスをhttps ドメインに変更する

WordPressのアドレスがデフォルトでは、以下のようにconfigファイルに記載されており、IPののままだったりします。

'http://' . $_SERVER['HTTP_HOST'] . '/'

コンソール画面から、/bitnami/wordpress にある wp-config.phpを以下のように編集します。
wp-config.php は初期では権限が 640 で所有者しか編集できない状態です。 sudoを使うなり権限を一時的に変えるなりして、viなどで編集してみてください。(viは操作が特殊ですしchmod sudoなど、詳しくない方はこれを機に覚えておくのが良いと思います)

173行目: define('WP_HOME','https://< ご自身のサイトドメイン > ');
174行目: define('WP_SITEURL','https://< ご自身のサイトドメイン >');

また、サイトを再起動するために以下コマンドを打ちましょう。

sudo /opt/bitnami/ctlscript.sh restart apache

赤、下線のようにhttps ドメイン になっていれば大丈夫だと思います。

ads.txtの配置

Google AdSenceを利用している場合、ads.txtを配置します。
以下のフォルダに配置しましょう。

/opt/bitnami/wordpress/ads.txt

googleadsense

人気記事

1

Apple Siliconへの各社アプリ対応状況まとめです。2021年9月現在、徐々にネイティブ対応完了のアプリが増えてきました。随時更新です。

2

Apple Watchって何ができるの?初代から5年間使用している私が、Apple Watchの機能と魅力をゆっくり解説してゆきます。

3

自分でWindows7からWindows10にアップグレードする方法を、徹底解説します!
2021年1月現在、今でもMedia Creation Toolを使えばWindows10への無料アップグレードは可能です!

4

デザインを刷新し多くの新機能が追加されています。10からのアップグレードが可能なのは嬉しいポイント。この記事では、Windows11の新機能と変更点について解説します。

-その他
-, , , ,

© 2022 サムライ コンピューター Powered by AFFINGER5