WordPress ローカル環境からHetemlサーバーへ移行

「ヘテムル」レンタルサーバー
4.7

今回はローカル環境MAMPで作ったデータをHetemlへ移行する方法を紹介します

サーバーが違っても基本的にやることは同じ(と思います)
以前サクラサーバーへ移行した時に作業したものを参考にしてやってみました

環境

MacBookPro(macsOS Mojave Ver10.14.6)
MAMP Ver5.3
FTPクライアント CyberDuck

条件

Hetemlへ独自ドメインを設定済み
CyberDuckでHetemlへ接続出来ている

手順

移行手順はこんな感じ

ローカルPC データベースのエクスポート
サーバーへWordPressインストール
データベースの情報を確認する
データベースをインポート
ローカルPCにあるデータをアップロード
ドメインの変換
.htaccess変更

データベースのエクスポート

ローカルで制作したデータベースを調べる
データベースはwp-config.phpに書かれてます

Windowsの場合  Cドライブ  > MAMP > htdocs
macの場合 アプリケーション > MAMP > htdocs

wp-config.phpのdefine( ‘DB_NAME’, ‘データベース名’ );に書かれています

/** WordPress のためのデータベース名 */
define( ‘DB_NAME’, ‘データベース名’ );
/** MySQL データベースのユーザー名 */
define( ‘DB_USER’, ‘ユーザー名’ );/** MySQL データベースのパスワード */
define( ‘DB_PASSWORD’, ‘パスワード’ );/** MySQL のホスト名 */
define( ‘DB_HOST’, ‘localhost’ );/** データベースのテーブルを作成する際のデータベースの文字セット */
define( ‘DB_CHARSET’, ‘utf8mb4’ );/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define(‘DB_COLLATE’, ”);

 

MAMPのスタートページを開き、phpMyAdminをクリック

上のデータベースタブをクリックします

調べたデータベースを選択します
こんか感じでテーブルの一覧が出てきます

  

注意:データベースを選択してテーブルの一覧が表示されていることを確認しておいてください
慣れてくると選択する前にエクスポートさせてしまい、移行出来ない事があります

エクスポートをクリックして設定をします

Export method:詳細-可能なオプションをすべて表示を選択

フォーマット:SQL

Table:デフォルトで全てチェックが入っているのでそのまま

出力:出力をファイルに保存するへチェックを入れる

フォーマット特有のオプション:そのまま

生成オプショ>追加コマンド:DROP TABLE/VIEW/PROCEDURE/FUNCTION/EVENT/TRIGGERコマンドを追加する
へチェックを入れる

Data creation options:そのまま

エンコーディング:そのまま

と設定したら実行ボタンを押し、保存します

HetemlのサーバーへWordPressをインストールする

Hetemlへログインします
ログイン>コントロールパネルを選択し、へテムルIDとパスワードを入力

メニューの各種設定>簡単インストールをクリック

WordPressのインストール画面へ進むをクリック

インストールの為の情報を入力します

インストール先URL:インストールしたい URLを選択する
データベース:自動作成  ※データベース名を自分でつけたい場合は事前にデータベースを作成する
サイトタイトル:決まっていれば入力、なくてもOK
ユーザー名:ローカルで使っていたユーザー名
パスワード:ローカルで使っていたパスワード
パスワード再入力:上に同じ
メールアドレス:ローカルで使っていたメールアドレス
プライバシー:チェックを入れる(一旦インデックスさせません)

ここまで設定したら一番下のインストールボタンを押す
ポップアップでフォルダがないなど出てきますがOKを押してインストール完了させます

データベースの情報確認

データベースを自動作成した場合、データベース名がわからないので調べます

コントロールパネル右上に”heteml FTP”のアイコンをクリック

FTPアカウントとパスワードを入力してログインします

web>インストールしたドメイン名の中にwp-config.phpがあります
これを開きます

ここにデータベース名、ユーザー名、パスワード、ホスト名を書き留める(メモやノートパッドへコピペ)

データベースインポート

Hetemlコントロールパネルへ戻ります

メニューの各種設定>データベースをクリック

データベース一覧の中から調べたデータベースを見つけて”phpMyAdmin”をクリック

調べたユーザー名、パスワードを入力してログイン

データベースを選択し、削除、インポートのタブをクリックします

ファイルを選択のボタンを押し、ローカルからエクスポートした***.sqlのファイルを選択し実行ボタンを押す

これでインポートが完了します

wp-config.phpの書き換え

アップロードするwp-config.php(ローカルに置かれているファイル)をhetemlサーバーへインストールされたデータベース情報をかきかえます

先ほどメモしたものをローカルのwp-config.phpへコピペします

↓この部分

/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘データベース名’);

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

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

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

 

ローカルPCのデータをアップロード

CyberDuckでHetemlへ接続、インストールしたフォルダを開きます

次にファイルをアップロードをクリックし、データが保存されているフォルダを選択します

フォルダを表示したら「command + shift + .」を押して隠しファイルを表示させる
.htaccessが隠されています
このように表示されていればOK

「command+a」で全てのファイルを選択してuploadボタンを押す
アップロードは全て上書き

アップロードが終わるまで待ちます

ドメイン変換

ローカル環境のurlとHetemlのurlが違う為、ドメインの変換をします
ここはツールを使います
Search Replace DB

必要事項を入力します
Would you like to receive our newsletter?のチェックはいらないかと

 

SUBMITを押すと2通メールが届くので2通目の”Download Search Replace DB v 3.1.0 here”のリンクからダウンロードします

ダウンロードしたファイルを解凍し、wp-config.phpがある階層へCyberDuckでアップロードします

アップロードが終わったらブラウザのアドレスバーへ”http://サーバドメイン名/Search-Replace-DB-master/index.php”と入力して開く

開くとこんな表示がされ、①へローカル環境のurl、②へhetemlのurlを入力します


①localhost:8888/test
②main.com

注意:http://不要
最後の/不要

actionsのdry runをクリックするとこんな表示が出てきます

view changesをクリックすると返還前、変換後が表示されます
ここで正しく変換されているか確認をします

確認して良ければactionsのlive runをクリックして変換開始!
変換が終わったらdelete meを押すとサーバーからSearch Replace DBのフォルダを削除してくれます

.htaccessの変更

hetemlのFTPへログインし、.htaccessを開く

RewriteBase、RewriteRuleがローカルのurlの場合、正式なドメインへ書き換える

WordPressへログイン

これでWordPressへログインします
固定ページや投稿ページを触って更新ボタンを押すなどして動作確認します

ログイン後にやること

hetemlの無料SSLを設定したら設定>一般設定のWordPress アドレス (URL),サイトアドレス (URL)をhttpからhttpsへ変更する

その他トラブル

何回か移行しているのですが、発生したトラブルの事例です

固定ページの更新ボタンや変更をしようとすると403エラーが発生する

WAFが原因で発生で遮断されているようです
.htaccessへ除外を記述して解消
詳しくはこちら

リンクが切れてしまう

これは理由が不明でしたがパーマネントリンクを保存したら解消

最新情報をチェックしよう!