【最新版】さくらインターネット・SnapupでWordPressを移行

af894154e4797e0ba9197049e80f4094 1200x860 - 【最新版】さくらインターネット・SnapupでWordpressを移行 IT
この記事は約15分で読めます。

目次

はじめに

久々にITの記事を書きます。というのは、結構なドハマリをしたので、備忘録としても残したいと思い、この記事を書くことにしました。

 

さくらインターネットのサーバーレンタルを開始して、早10年。静的HTMLのみで作っていたサイトから始まり、時代は移り行きまして、Wordpressを用いてブログまで始めてしまいました。SSL化したこともありました。

 

7266d54b801964ac3119dac3f0c5ca0a - 【最新版】さくらインターネット・SnapupでWordpressを移行
【完全版】さくらインターネット上のWordpressをSSL化
さくらインターネット上でWordpressをSSL化するプラグインがリリースされたというのを聞き、自身のサイトもSSL化することにしました。検索順位にも大きく影響があるので、個人のサイトにもSSL化が必至になってくるでしょう。S...

 

今回は、PHPモジュール化によるWordpress高速化を実現するため、さくらインターネットのスタンダードプラン間でのお引越しをすることにしましした。

 

【最新版】さくらインターネット・SnapupでWordPress移行とURL正規化リライトルール設定

WordPress移行作業後、URLの正規化をリライトルールで設定しています。詳細は以下でご覧ください。

98644afdeda33330ff5a8f6908c39696 - 【最新版】さくらインターネット・SnapupでWordpressを移行
【最新版】さくらインターネット・URL正規化リライトルール設定
はじめに久々にITの記事を書きます。というのは、結構なドハマリをしたので、備忘録としても残したいと思い、この記事を書くことにしました。さくらインターネットのサーバーレンタルを開始して、早10年。静的HTMLのみで作ってい...

 

スポンサーリンク

PHPモジュールによる高速化

背景としては、色々設定を変更してもWordpressのレスポンス速度改善がないなと思っていたところ、そういえばさくらインターネットからのお知らせでPHPのモジュール化がどうのと書いてあったなと思ったので、改めて確認したことに始まります。

 

メールでのお知らせがきていたけれど、そういえばちゃんと見ていないな、と思ったので再確認しました。

 

現状

800番台のサーバーが割り当てられていました。

018bb0776d61aa50dce1e4ebdf1c218e 300x203 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

そして、PHPもCGI版・・・。

eb06600f40105d7ae0f346eeb8857c72 300x165 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

そりゃ、10年前から契約していればね・・・。

 

PHPモジュール利用のための条件

私が、契約しているのは「さくらインターネットのサーバーレンタル スタンダードプラン」ですので、PHPモジュールを利用するためには以下の条件が必要になるとのことでした。

 

  • 「www3701.sakura.ne.jp」以降の番号のサーバーが割り当てているスタンダードプラン

 

※「www3701.sakura.ne.jp」以前の番号のサーバーが割り当てているスタンダードプランは、別途スタンダードプランを新規契約し、移行する必要がある(プラン内におけるサーバーの変更は不可)

9ed82b954d384e2a3d7ec543b810ef79 - 【最新版】さくらインターネット・SnapupでWordpressを移行
さくらのレンタルサーバ スタンダード・プレミアムにて「PHPモジュールモード」提供開始のお知らせ | さくらインターネット
さくらのレンタルサーバ スタンダード・プレミアムにて「PHPモジュールモード」提供開始のお知らせ | さくらインターネット

 

330463cb91611001f1bcf83e68dce510 300x168 - 【最新版】さくらインターネット・SnapupでWordpressを移行

「スタンダードプランのお客様へは新スタンダードプランを初期費用+スタンダードプラン1ヶ月分相当額を値引きするクーポン」の配布が終了したということなので、見逃していた自分が悪いと諦めることにしました。そして今回は上述の通り、「別途スタンダードプランを新規契約し、既存サーバーから移行する」ことにしました。

 

移行開始

早速新しいサーバーを仮契約しました。さくらインターネットは、2週間の仮契約後、本登録することが可能です。2週間の間に解約すれば無料で使用することが出来ます。

 

早速ですが、仮契約で割り当てられたサーバーは、200番台・・・

fee824dc8974543ac78c4880752c4980 300x208 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

若返った・・・

でも、PHPモジュールは使えると書いてある

 

これは相談だ!と思い、別件も合わせて確認したいことがありましたので、さくらインターネットサポートセンターに相談してみました。

 

スポンサーリンク

PHPモジュール利用可否

PHPをモジュール版を利用できる条件は?

さくらインターネットコントロールパネル「PHPのバージョン選択」で 「PHP 7.X.X (モジュール版) 」と出ていればモジュール版が使えます。

 

仮契約状態では、他(さくらインターネット以外)で取得した独自ドメインを利用したウェブ公開が不可

仮契約状態(無料お試し期間)では、さくらインターネットで管理しているドメイン・外部で管理しているドメイン問わず、独自ドメインを利用したウェブ公開は制限されています。本登録に移行した段階で、独自ドメインを利用したウェブ公開が可能になります。

 

スポンサーリンク

移行プランA:マニュアル移行

ここまでの情報を踏まえ、「コンテンツ + データベース」をマニュアルで移行するというプランで早速テストしてみました。

snapup 300x137 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

コンテンツ移行はSCPで行うもよし、SFTPでコツコツと移行してもよし、なのですがどうも気になったのはデータベースを旧環境からエクスポートして、新環境php MyAdminからデータベースへインポートしようとしたところ、エラーになりました。

 

データベースインポート:エラーの理由

よく見てみると、インポート用ファイルの上限が16MiBという容量制限が記載されていました。

3cde94dd8967a53179bb5915238ebfe5 300x197 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

ですので別手段の検証として以下を試してみました。

 

  1. 既存環境php MyAdminからエクスポート(SQLファイル)
  2. 新環境のインポート先となるデータベースを、さくらインターネットコントロールパネルで作成
  3. 上記1.)でエクスポートされたSQLファイルを環境へアップロード
  4. 自身のMacintoshから新サーバーへSSH接続
  5. コンソールでMySQLデータベースへ接続、上記3.)でアップロードしたSQLファイルインポート

 

上記は問題なくインポートできました。しかしながら、既存環境と新環境でバージョンが異なるためだとは思いますが、データベースの容量が若干異なったことと、Wordpressコンテンツとの整合性が一部取れなかったので、この方法は見送りしました。

 

スポンサーリンク

移行プランB:Snapupを利用した移行

はて、どう移行するかと考えてみたところ、さくらインターネット上でSnapupが使えるということを見つけました。

af894154e4797e0ba9197049e80f4094 300x215 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

コントロールパネルからリンクがあったので、試してみることにしました。移行プランとしては以下を想定していました。

snapup01 300x174 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

手順にすると以下のようになります。

移行手順

  1. 新環境にあるSnapupを開く
  2. 「サイト追加」で、既存環境のWordpressへの接続を作成する
  3. 既存環境のスナップショットを作成する
  4. 新環境移行先階層に、新規Wordpressをインストールする
  5. Snapupで「サイト追加」し、上記3.)で作成したスナップショットを基に新環境のWordpressへの接続及びスナップショットを作成する
  6. 上記5.)で作成したスナップショットを、ステージングサーバーへマウントする
  7. 上記6.)で作成したステージングサーバーを確認する
  8. スナップショットを新環境本番へ反映する
  9. wp-admin.phpを編集する

 

それぞれの手順を画面キャプチャと共に記載します。

 

1.新環境にあるSNAP UPを開く

さくらインターネットコントロールパネル(https://secure.sakura.ad.jp/rscontrol/)からログインし、左メニュー「運用に便利なツール」から「バックアップ & ステージング」を選択します。

e1eb7c1cf3431ed91ff0b56c544015e0 245x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

すると右側に「Snapupで開く」のボタンが出現します。

0dc372cd5af7cf014cab2afe922451f2 300x83 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

クリックするとSnapupが開きます。既存契約のサーバーインスタンスは、既に設定されています。

0c46775702949966dfff1d9a0b29cde6 300x128 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

2.「サイト追加」で、既存環境のWordpressへの接続を作成する

「ADD SERVER」をクリックします。

13b1314195e24d17d26d8595c6040c6c 300x128 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

既存環境への接続情報として、以下を記載します。

  • サーバー名:任意でわかりやすく入力
  • 接続するサーバー名、ホスト名 またはIPアドレス:契約情報にあるホスト名かIPアドレス
  • ユーザー名:契約情報にあるアカウント名
  • パスワード:契約情報にあるアカウント名のパスワード

d49fcc15368458e7cd8093186ea4599b 241x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

入力したら、「追加」をクリックします。

 

3.既存環境のスナップショットを作成する

既存環境のスナップショットを作成するため、「サイトを追加する」をクリックします。

d66572567cda4c7d16e1e8f75d6dbab1 300x240 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

サイト名は任意で入力し、サイトタイプから「WordPress」を選択すると、自動的にWordpressがインストールされているパスのスキャンが開始されます。

6a47bf5899c524764c31fe729064a417 282x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

「WPパスを選択」から、移行元となるWordpressのインストールパスを選択し、「追加」をクリックします。

 

WordPressインストール先のパスが正しく認識されると、以下のプロセスを開始するための質問が表示される場合があります。ここでは「キャンセル」をクリックします。

95e807ffe3a5ebdc65c69012245f0122 297x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

追加されたサイトを選択し、「スナップショットを追加、作成する」をクリックします。

29e6b745291ff1f181f35ec45563024d 300x154 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

スナップショットに、わかりやすいコメントを入力し、「実行」をクリックします。07c7701d8cf53774e32b689d98783e73 300x178 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

完了するまでの間、インターネットに接続された状態で、上記「OK」の画面を出したままにしておくことを推奨します。

 

完了すると以下のような画面になります。

ee7b3daf2bee115bb1cb89b14d250019 300x162 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

Snapupのホーム画面は以下のようになります。

1c4c1ccb0ab0487a35b2827d867ae5a0 300x144 - 【最新版】さくらインターネット・SnapupでWordpressを移行

左側(www2XX.sakura.ne.jp)が新環境、右側(旧Kengenius)が旧環境になります。

なお、契約に紐付いている新環境(左側:www2XX.sakura.ne.jp)のサーバー名の表示は変更できません。

 

4.新環境移行先階層に、新規Wordpressをインストールする

ここまでで、移行元となる旧環境からのデータ(スナップ)は取得できました。今後は取得したデータを新環境に移行する必要がありますが、移行先となる新環境の階層にWordpressがインストールされていないと、Snapupの手順を進めることが出来ません

 

そのため、新規でWordpressを仮想的にインストールする必要があります。手順は以下です。

 

1. 移行先となる新環境のさくらインターネットコントロールパネルで、Wordpress用データベースを新規作成します。

139ac074bec6cc6acb01cd20feb8e0e0 269x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

2. 移行先となる名称で新規作成した上で、とりあえずWordpress公式サイト(https://ja.wordpress.org/)から最新版をダウンロード、デフォルトで構いませんのでインストールします。

 

5.SNAP UPで「サイト追加」し、上記3.)で作成したスナップショットを基に新環境のWordpressへの接続及びスナップショットを作成する

今度は、新環境のWordpressへの接続とスナップショット作成のためのサイトを追加します。

 

契約に紐付いている新環境(左側:www2XX.sakura.ne.jp)をクリックします。

89dfe681a400a7f9d7cc59a50bce0c83 300x144 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

サイトを追加する」をクリックします。

3d5a5c65f45460b23a681d95fee1b24a 300x217 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

上記4.で新環境移行先階層に新規Wordpressをインストールする必要があったのはこの画面のためです。サイトタイプでWordPressを押下した際、「WPパスを選択」に移行先として表示させる必要があるためです。

cef5558634e57df4c81f8e8d010c710f 280x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

同様にサイト名は任意で入力し、サイトタイプから「WordPress」を選択すると、自動的にWordpressがインストールされているパスのスキャンが開始されますので、「WPパスを選択」から、移行元となるWordpressのインストールパスを選択し、「追加」をクリックします。

 

追加されたサイトを選択し、「スナップショットを追加、作成する」をクリックします。

29e6b745291ff1f181f35ec45563024d 300x154 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

他サイトから取得…」をクリックします。

2e4ed322ee0d7067249befa9dabd7c97 300x192 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

上記3.の手順で取得した、旧環境のスナップショット(この場合、サーバー:旧Kengenius、サイト:kengenius.com)を選択し、「次へ」をクリックします。

a51ad294905418b3519ecf76f888acdc 291x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

すると画面が遷移し、以下のように表示されます。

4f440819a464737b9d709466ef35f202 300x180 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

完了するまでの間、インターネットに接続された状態で、上記「OK」の画面を出したままにしておくことを推奨します。

 

完了すると以下のような画面になります。

524e35ea4434a5e2b2f86c436736717a 300x194 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

6.上記5.)で作成したスナップショットを、ステージングサーバーへマウントする

「ステージングサーバーを作成する」をクリックします。

02d7548f67622c2c59483d79ac059566 300x158 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

ステージングサーバー名は、自動で割り振られるもので問題ありません。

本番環境に合わせるべく、httpsMySQLは5.7PHPは7.3を選択し、「追加」をクリックします。

d6a7851166005fb177eb5c91f562390e 300x284 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

あとは待つだけです。完了したら、以下のような画面になります。

このままではテストサーバーは空っぽですので、旧環境から取得したスナップショットを、新環境のステージングサーバーに反映させるために、「ステージングサーバーにセット」をクリックします。

e249e3f22ce30ca036b317989c500814 300x162 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

以下の画面が出現したら、「サイトURLの書き換えを行わない」を選択し、「OK」をクリックします。

3249bb6ab88763215986132da6e4c34a 230x300 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

7.上記6.)で作成したステージングサーバーを確認する

ステージングサーバーが完成したら、右上のURLリンクで、サイトの表示を確認します。

43ea5f02fac507b4b97ea1cad4ec17c8 300x145 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

8.スナップショットを新環境本番へ反映する

問題がなければ、「本番サーバーへリリース」をクリックして、新環境本番へ反映します。

f7547368c73780228efd2b26bfeec12a 300x145 - 【最新版】さくらインターネット・SnapupでWordpressを移行

 

ここまでで、ほとんど移行作業は終了しています。

 

9.wp-admin.phpを編集する

しかしながら、移行されたWordpressコンテンツと、新環境データベースの接続設定は整合性が取れていません。そのため、Wordpressの設定ファイルであるwp-admin.phpを編集します。wp-admin.phpはデフォルトで、WordPressをインストールしたディレクトリ直下に存在しています。

 

wp-admin.php

以下の項目で赤字になっている箇所を、自身の新環境に合わせて変更します。

// ** MySQL 設定 – この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘データベース名‘);

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘データベース接続ユーザ名‘);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ‘パスワード‘);

/** MySQL のホスト名 */
define(‘DB_HOST’, ‘MySQLサーバーホスト名‘);

/** データベースのテーブルを作成する際のデータベースの文字セット */
define(‘DB_CHARSET’, ‘utf8‘);

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define(‘DB_COLLATE’, ”);

 

SSL証明書発行・設定

今回、JPRS SSLから無料のLet’s Encryptにすることにしました。Let’s Encryptをさくらインターネット上で利用する方法に変更する場合、どうしてもサイトとしてのダウンタイムは発生してしまいます。

 

ダウンタイムが発生する理由

理由は、SSL証明書を既に利用しているかどうか、独自ドメインを利用しているか、さらにその独自ドメインがさくらインターネット上で管理されているかどうかに関係なく、さくらインターネットネームサーバー上「ns1.dns.ne.jp」と「ns2.dns.ne.jp」のレコードであることが伝搬され、以下の情報が確認され次第、Let’s Encryptが発行開始、設定されます。

 

Let’s Encryptを利用する場合

独自ドメインを利用しているか、さらにその独自ドメインがさくらインターネット上で管理されているかどうかに関係なく、以下のDNS設定をする必要があります。

 

  • サーバー情報のIPアドレス持ったAレコードのみを設定する
  • ネームサーバーは「ns1.dns.ne.jp」と「ns2.dns.ne.jp」のみを設定する

 

上記で最大2日、何もせずに待ちます。

すると、そのうちタイミングでLet’s Encryptに申し込めるようになります。Let’s Encrypt利用申請開始から発行完了まで、SSLでの接続を試行するとさくらインターネット上では以下のような画面を表示するのが仕様となっています。

 

注意事項:忍耐とブラウザのキャッシュ

SSL証明書が発行・設定完了されるまでのダウンタイムは、しばらくの間、忍耐です。ここで焦って設定を変更したりすると、また振り出しに戻ってしまいます。また、キャッシュも非常に強く効いていますので、SSL証明書が発行・設定完了した場合には、ブラウザのプライベートモード等でアクセステストを行うことを推奨します。

 

ちなみに、私の場合はこのSSL証明書設定に約6時間のダウンタイムが発生しました。

 

CDNを利用する場合の制限

また、Let’s Encryptを使用する場合、Cloud Flare等のCDNによるSSL、ネームサーバー設定を解除する必要があります。これは、Let’s Encryptを初回設定する場合は上述の通り、必須となります。Let’s Encryptの仕様として自動更新されますが、Cloud Flare等のCDNによるSSL、ネームサーバー設定がされている場合においては、自動更新ができなくなる可能性があり、さくらインターネットでは動作保証しない、とのことでした。

 

【最新版】さくらインターネット・SnapupでWordPress移行とURL正規化リライトルール設定

ここまで出来たあと、Wordpress移行作業後、URLの正規化をリライトルールで設定しています。詳細は以下でご覧ください。

98644afdeda33330ff5a8f6908c39696 - 【最新版】さくらインターネット・SnapupでWordpressを移行
【最新版】さくらインターネット・URL正規化リライトルール設定
はじめに久々にITの記事を書きます。というのは、結構なドハマリをしたので、備忘録としても残したいと思い、この記事を書くことにしました。さくらインターネットのサーバーレンタルを開始して、早10年。静的HTMLのみで作ってい...

 

DNS設定を実施する

最後に、Let’s Encryptのために削除した、もしくは追加しないでおいたDNS設定をこのタイミングで反映します。あとは、DNSの伝播を待つのみです。

 

さいごに

最終的にこのkengenius.comがPHPモジュールで動作するようになり、非常に軽快に動くようになりました。最後までやり切ってよかった、と思えるようになりました。

 

ハマりそうな注意事項がたくさんあり、かつキャッシュが強く効くようになっている昨今の環境では、自身の行った設定が正しいのか、もしくは反映されていないのかということが判断しにくくなっています。

 

この記事をご覧の方が、エラーログを確認したり、公式サポートを利用しつつ、それでも困ったときの情報となり、スムーズな移行ができることを願っています。

タイトルとURLをコピーしました