Local by Flywheelで作成したWordPressをレンタルサーバーの本番環境へ移行する方法

※ この記事はアフィリエイト広告を使用しています。
WordPress備忘録
※ この記事はアフィリエイト広告を使用しています。

初心者でもローカル環境からレンタルサーバーへ簡単にWordPressを引っ越しできる無料プラグイン:All-in-One WP Migration

せっかくサーバー知識がいらずにローカル環境でWordPressが構築できるLocal by Flywheel なのに最後に本番環境へ移行となると、”結構勉強しなきゃダメじゃん”みたいになって最初からLocalなんて使わないとなるのは残念なので、そういう方におすすめの方法です。
本来All-in-One WP Migrationは、レンタルサーバーの乗り換えの時などにWordPressを移行(引っ越し)するツールとして、管理画面からインストールでき、管理画面だけで移行が終了するという便利な無料プラグインです。

この記事は初心者向けの記事で、ローカル環境のWordPress(それもLocal by Flywheel環境下のもの)を初めてレンタルサーバーに移行して、本番環境で運用を始めることを前提に書いています。
よって、レンタルサーバーを乗り換える際の移行に必要な事項は考慮して書いていません。

All-in-One WP Migrationの特徴

  • 投稿・固定ページ、テーマ、プラグイン、メディアファイル(記事に使っている画像など)、データベースをエクスポートして保存できます。
  • また、バックアップ機能としても使え、エクスポート元のWordPressにインポートすれば、エクスポート時のWordPressが復元されます。
  • 他のWordPressにインポートすれば、ローカル環境からレンタルサーバーでも、レンタルサーバーからローカル環境でも復元されます。

例えば、
Local by FlywheelのWordPress(URL:demo.local)を
レンタルサーバーのWordPress(URL:tubepackweb.com)に
全く同じクローンサイトが作れます。

ユーザーや投稿者も demo.local のものに置き換わりますので、
tubepackweb.com でログインするときは demo.local のユーザー名・パスワードでログインすることになります。
この移行プラグインのすごいところは、レンタルサーバーにコピーサイトを作るといっても、demo.localのドメイン情報はレンタルサーバー側に設定して稼働しているドメイン情報にすべて置き換えてくれます。
編集が必要なwp-config.phpとデータベース内のドメインに関する情報を自動で書き換えてくれます。

引越し元のWordPressにインストールし、引越し先のWordPressにもインストールが必要です。つまり、引越し先にはWordPressがインストールされていないといけません。

ローカル環境から本番環境へ移行する従来の玄人的な方法

”local by flywheel 本番環境 移行” などで検索するとプラグインに頼らない従来の移行方法の情報は多いので、読んでみてそういうことにも興味がわけば覚えて損はありません。
FTPクライアントソフト、phpMyAdmin、テキストエディタなどを使います。
その方法で正しく行えば、他サーバーに確実にWordPressの引っ越しが行えます。

ですが、WordPressは情報発信のツールで早くコンテンツ作成に集中したいと思いませんか?
サクッとレンタルサーバーの本番環境へ移行(引っ越し)を終わらせましょう。

All-in-One WP Migration を使えば、簡単に短時間でレンタルサーバーへ引っ越しできる理由

FTPでWordPressディレクトリをレンタルサーバーへアップロードしなくていい

FTPクライアントソフトは必要ない。
引っ越し先のWordPress本体は、レンタルサーバーの簡単インストール機能でインストールする。

データベース単体をエクスポート、引っ越し先でインポートしなくていい

WordPressはインストールされたディレクトリと別にデータベースも引越ししなくてはいけません。
Local by Flywheel のデータベース管理ソフトは Adminer 、レンタルサーバーはたいていphpMyAdmin ですが、どちらも触らなくていい。

引っ越し先の wp-config.php やデータベースのドメイン部分の置換作業が自動

レンタルサーバーのファイルマネージャーやテキストエディタを触る必要がない。
プラグインがやってくれる。
データベースのエクスポートファイルを編集し、移行前ドメインを移行後ドメインにTeraPad等のテキストエディタで検索・置換する作業がいらない。

WordPressの管理画面からだけで引っ越し作業が完了します。

All-in-One WP Migration を使えば、めんどくさい手動のやり方を覚える間にレンタルサーバー(本番環境)への引っ越しが終わります。

ロリポップレンタルサーバー|ライトプランに引っ越しする

今回実行したのは、ロリポップレンタルサーバー|ライトプランに引っ越しする方法ですが、他のレンタルサーバーでも方法はほとんど同じです。

実践した引っ越し元:Local by Flywheel側の環境

Windows版 Local 3.3.0:PHP 7.3、MySQL 5.6、Webサーバー Apache
※ Local はPHP・MySQLのバージョンの組み合わせが自由に変更できるので、
移行するレンタルサーバーのバージョンに合わせてWordPressが正常動作することを確認します。
WordPressバージョン 現時点最新の5.3
テーマ:cocoon
投稿2ページ:エディタのcocoonブロック全部と一般ブロックでテキスト・画像を表示。
デフォルトの4つのテーマはインストールしたまま。
インストール&有効化プラグイン:
WP Multibyte Patch(これだけは必須で入れてください)
Edit Author Slug

実践したロリポップレンタルサーバー側の環境

引っ越し先WordPress:
「WordPress簡単インストール」でインストールしたデフォルトの状態。
WordPressのバージョンだけローカル環境と同じ5.3に更新。
PHP 7.3、MySQL 5.6、Webサーバー Apache。
※ 引っ越し元・引っ越し先のWordPress・PHP・MySQLのバージョンは万一の不具合を避けるために揃えます。
テーマ:Twenty Nineteen
デフォルトの4つのテーマはインストールしたまま。
インストール済みプラグイン:ロリポップのデフォルトでインストールされる3つ
Akismet Anti-Spam
Hello Dolly
SiteGuard WP Plugin
ロリポップのWAF機能はOFF、アクセラレータはONで行いました。

Local側WordPressの準備とサイトのエクスポート

引っ越し元であるローカル環境のWordPressで、
「プラグイン」-「新規追加」をクリック。
[all in one]と検索ボックスに打てば All-in-One WP Migration が見つかります。
インストールして有効化します。

All-in-One WP Migrationのメニューから
「エクスポート」で上記画面。
検索 <文字列> 置換 <別の文字列> データベース内」は何も追加しません。
「高度なオプション」も何もチェックしません。

※移行先にインポートした後、メディアファイルの表示だけ不具合出たときは、下記メディアファイルのアップロードだけやってみる手段もあります。

  • 高度なオプション:「メディアライブラリをエクスポートしない」にあえてチェックを入れてエクスポートする。
  • メディアライブラリはFTPクライアントで移行先WordPressへ同じフォルダ構造・ファイルネームでアップロード

上記方法でエクスポートファイルサイズを減らす
⇒ インポート時の時短
※しかし、メディアライブラリのアップロードにそれなりに時間がかかります。

「エクスポート先 +」クリックで開くリストに「ファイル」があります。
それ以外のエクスポート先は有料エクステンションの購入が必要です。
「ファイル」をクリックするといきなりエクスポートが始まり、終わるのを待ちます。
エクスポートされるファイルの拡張子:.wpress

完了すると、エクスポートしたファイルサイズが出ます。
緑色で囲まれた「ダウンロード」ボタンで自分のパソコンの任意の場所に保存します。
それとは別に、WordPressインストールディレクトリ内に同じものが自動的に保存されます。
保存先は:
C:\Users\[Windowsユーザー名]\Local Sites\[サイト別フォルダー]\app\public\wp-content\ai1wm-backups
※ 「サイト別フォルダー」はLocalの目的のWordPressの「OVERVIEW」タブの Site Pathで確認できます。

無料版ではエクスポート可能なファイルサイズが512MBに制限されたという話もありますが、未検証です。
公式ユーザーガイドは、そこには触れてないように思います。

レンタルサーバーにインストールしたWordPressでインポートする前に

All-in-One WP Migrationのメニューの「インポート」でサイトのインポート画面に行きます。
下記のようにロリポップだと「最大アップロードファイルサイズ」が20MB以下になっていると思います。
すると、44MBのファイルをインポートできません。

このアップロードファイルサイズの制限は、ワードプレスの設定ではなく、WebサーバーのPHPによる制限です。
2022/1 現在
ロリポップのハイスピードプランではデフォルトで100MBになっています。
この値はレンタルサーバー各社で違います。

この最大アップロードサイズの制限を超えた大きさの All-in-One WP Migration エクスポートファイルを引越し先でインポートするには、制限値を変更する必要があります。

最大アップロードファイルサイズを変更する方法1

追記)
2022/1 現在
この「 最大アップロードファイルサイズを変更する方法1 」は下記説明の All-in-One WP Migration Import という無料の拡張プラグインを使用する前提で書いてありますが、
無料版の配布が終了しており、記事情報が古くなっています。しかし有料版を使えば同じ手順で進められます。

レンタルWebサーバーによっては管理画面からこの制限値を変更できる場合があります。その場合 All-in-One WP Migrationの拡張プラグインは必要ありません。また、管理画面にその機能がない場合 「最大アップロードファイルサイズを変更する方法2」も試してみてください。

古いバージョンではデフォルトで512MBまではインポート可能になってますが、わざわざ、古いバージョンを探す必要はありません。
そこで、All-in-One WP Migration Import という無料の拡張プラグインをインストール・有効化します。
最大アップロードファイルサイズが512MBに変更できます。
上記画面で、”最大アップロードファイルサイズを上げる方法”の右側の、
「無制限版の購入」リンクから All-in-One WP Migration Import をパソコンにダウンロードして保存します。
使うのは無料版のBasicの方です。
all-in-one-wp-migration-file-extension.zip がダウンロードされます。

現在の無制限版購入画面

現在の無制限版購入画面

「開始」をクリックで「Unlimited Extention(無制限のエクステンション)」購入画面に行きます。

旧 無制限版購入画面

旧 無制限版購入画面

「プラグイン」-「新規追加」と進み、「プラグインのアップロード」クリックで、
ダウンロードした zipファイルをそのまま選択します。
「今すぐインストール」でインストールして「有効化」してください。

Maximum upload file size と英語になってますが、アップロードできるファイルサイズが512MBに変わりました。

最大アップロードファイルサイズを変更する方法2

.htaccess に追記する方法
ほとんどのレンタルWebサーバーにはウェブFTPが装備されていますので、それを使うのが簡単で安全です。

ロリポップ ハイスピードプランの場合

「ロリポップ!ユーザー専用ページ」から「サーバーの管理・設定」「ロリポップ!FTP」へと行きます。
.htaccessの場所
WordPressのインストールフォルダーにあります。
手順1:
.htaccessファイルをコピーして別の名前で保存する。
例).htaccess_bak
⇒ 元の状態に戻すときのバックアップとして
手順2:
.htaccessを編集して一番最後に下記を追加して保存。

php_value memory_limit 512M
php_value post_max_size 512M
php_value upload_max_filesize 512M

memory_limit ≧ post_max_size ≧ upload_maxfilesize となっていればOK

必要に応じ

php_value memory_limit 1024M
php_value post_max_size 1000M
php_value upload_max_filesize 1000M

などと調整します。

手順3:
WordPressに戻り、インポートできるファイルサイズが指定したサイズになっていることを確認。

デフォルト値に戻す場合

  • 追記した.htaccess を削除
  • バックアップファイル(例では.htaccess_bak)のファイル名を.htaccessに戻す
ロリポップ ライトプラン、スタンダードプランの場合

上記「 ロリポップ ハイスピードプランの場合 」の手順の前に

.htaccess に追記した設定が反映されるようにする手順が必要です。

手順0-1:
PHPモジュール版ではPHP設定変更できないため、CGI版に変更します。

  • 「ロリポップ!ユーザー専用ページ」
  • 「サーバーの管理・設定」
  • 「PHP設定」と進み、
  • 対象のドメインのPHPバージョンの「CGI版」を選択
  • 「変更」をクリック
  • PHPバージョンを変更した旨のメッセージが出ればOK
PHP CGI版に変更

手順0-2:
ここで.htaccessの設定反映できるようにします。

同じく 「PHP設定」 画面で対象ドメインの「php.ini」欄の「設定」を開く

php_value, php_flagを利用可能にする」項目を

「OFF」から「ON」に変更

php.iniを設定する」をクリック

「php.ini 設定を完了しました」のメッセージがでたらOK

ここまでの手順の後に「 ロリポップ ハイスピードプランの場合 」の手順に移ります。

以上が ロリポップ ライトプラン、スタンダードプランの場合 です

いよいよレンタルサーバーのWordPressでインポート

All-in-One WP Migration のインポート画面に行きます。
「インポート元+」をクリックして、
開くリストから「ファイル」を選び、
ローカル環境のWordPressからエクスポートしたファイルをインポートします。

インポートの準備ができたら、下記メッセージが出ますが「開始」で大丈夫。

”サイトをインポートしました”が出たら最後の作業です。

「パーマリンク構造を保存する」をクリックして開いた画面で引越し元と同じ設定にして「変更を保存」をクリックします。
同じ設定になっていたとしても「変更を保存」をクリックします。
この作業は必須です。
その後その画面は閉じます。

元の画面で「完了」をクリックして終了します。

まとめ

WordPress移行(引っ越し)の結果

今回の環境では滞りなくレンタルサーバーにLocal by Flywheel下のWordPressが復元されました。
レンタルサーバー側にインストールされていたプラグインはそのまま、Local側にあったプラグインが追加され、設定も引き継がれています。

全般的な注意点

WordPressの仕様でアップロードするメディアファイル(画像など)には日本語名が使えません。
万一そのような場合、WP Multibyte Patch有効化の下でアップロードしたファイル名は英数の羅列に変換してくれます。
その他、特定の状況での日本語処理の不具合をなくしてくれる、日本語でWordPressを使う全ユーザーの必須プラグインです。

セキュリティ系のプラグインはLocalでテストした後は、無効化・削除してエクスポートしてください。
レンタルサーバー側で導入すれば引っ越し時の不具合を回避できます。

All-in-One WP Migration の
無料エクステンションでインポートできるのは512MBまでです。
100記事規模のサイトまで可能だと思いますが、
画像は1枚当たり数10KB程度のファイルサイズにすることをおすすめします。
メディアファイルの総容量がエクスポートファイルのサイズを大きくします。
有料の無制限エクステンションでインポートできるファイルサイズは無制限です。

ブログランキング・にほんブログ村へにほんブログ村 ←ポチッとお願いします