備忘録に書いておきます。
Contents
環境情報
なるべく移行元サーバーに関係なく参考になるよう書いていますが、私が実際に行った環境・移行作業は以下の通りです。
- macOS 10.15
- XFREE(ドメイン取得なし)から独自ドメインを取得し、CORE-Miniを契約してWordPressを移行、XFREE側は301リダイレクト設定し、旧URLでもアクセスできるようにする
- 取得したドメインは”a11urr.org”
以下では
ドメイン取得/サーバー契約→HTTPSの有効化→URL正規化→WordPress移行→旧サイトのリダイレクト
の流れで説明しています。
ドメイン取得/サーバー契約
任意のレジストラでドメインを取得します。拘りなければコアサーバーの契約時にバリュードメインで一括で取ると勝手に設定してくれるので楽です。他のレジストラでも2年目以降の価格見るとあんま変わらん…
この項では契約時にバリュードメインで同時取得する前提で書いていきます。
まず、上記の通りバリュードメインのアカウントを作成し、バリュードメインのコントロールパネル›サーバー›コアサーバーからCORE-Miniプランを購入します。購入手続きの中でドメイン同時取得とWordPressインストール設定ができるので忘れずに設定します。
このときドメインの手続きの中でWhois代行の設定がなかったので「あれ…?これWHOIS公開されるんじゃね?」と思ったのですが幸いWHOIS情報代行が既定で有効化されていました。
心配な方は契約手続き前にバリュードメインのコントロールパネル›マイページ›ユーザー情報変更›ドメイン管理用連絡情報(アルファベット)が上からNone, Personal, [自分の居住している都道府県], [自分の居住している市町村], [自分の住所①], [自分の住所②], [アパート名等], Japanと記入されていることを確認。
また契約完了後、バリュードメインのコントロールパネル›ドメイン›ドメインの設定操作›WHOIS›WHOIS代行の状態 に”WHOIS代行は有効です”と書かれていればOK。ターミナルでwhois [取得したドメイン]
してもよい。
ログイン情報入手
契約完了後、”CORESERVER 登録完了のお知らせ”メールでコアサーバーのログイン情報、WordPress管理画面のログイン情報が送られてくるのでキーチェーン等に保存する。またコアサーバーのコントロールパネルのログインにはサーバー名が必要(メール中のFTPサーバーの一番左を入力/分からなかったらメール中の”CORESERVERコントロールパネル”リンクから飛べばよい)。
HTTPSを有効化する
- コアサーバーのコントロールパネルにログイン
- サイト設定をクリック、”サイト一覧”に移動
- wwwなしのドメインとwwwありのドメイン(と~.coreserver.jp、これは無視)があるのでドメインをクリック→”サイト設定の変更”→SSLを”無料SSL”に、同期設定を”しない”に変更。オプションの”Aレコードのチェックを行う”にチェックされているか確認。これをwwwありとwwwなしのどちらも同じくやる。
- ちょっと放置してからhttps://a11urr.orgのようにhttpsでアクセスしてみてアクセスできることを確認(この時点ではwwwありに403エラーが出るが気にしない)
サーバー上のファイルにSFTPでアクセスしてみる
FTPソフトはSFTP使えれば何でもいいですが私はiOSでファイラーとして使っているFE File Explorerを使用しました1。
12/29/2022追記: FE File ExplorerはMac App Storeから削除されました。後継はOwfilesです。
コアサーバーのコントロールパネル›サイト設定›FTP設定›FTP/SFTP接続情報 を見ながら”ホスト情報”,”ルートパス”,”アカウント”,”パスワード”をFTPソフトに入力し接続します。必ずSFTP(かSSH)で接続し、FTPは使わないこと2。また接続時にパスを設定しないとpublic_htmlを開こうとしても”Parmission Denied”となるので注意。
アクセスできたらa11urr.orgとwww.a11urr.orgのようにwwwあり、なしドメインのフォルダがあることを確認。次の手順へ。
.htaccessを作成して正規化
このセクションでやる設定
- http://でアクセスされたときもhttps://で表示
- www.a11urr.orgでアクセスされたときもa11urr.orgで表示
初期状態ではhttp/https,wwwあり/なしどちらでもアクセスできるようになっているため、httpの場合はhttpsに転送、wwwありの場合はwwwなしに転送する設定をします。
先ほどSFTPで見たwwwあり、wwwなしドメイン名フォルダの2つのフォルダに.htaccessファイルをアップロードします。
WWWありのほう
以下のサイトから記述をもらってきます。
- テキストエディットなどでテキストファイルを新規作成
- 上記サイトから.htaccessの内容をコピペ
- example.com部分を自サイトのドメインに書き換え
Options +FollowSymLinks
はいらないのでコメントアウト(行頭に#
挿入)- 適当な場所に保存してファイル名を”.htaccess”に変更
変更後はFinderから見えなくなるので⇧⌘.で不可視ファイルを表示する設定にします。
あとはSFTPかSSHで/public_html/www.a11urr.orgディレクトリに作成した.htaccessファイルを設置(SFTPならドラッグ&ドロップ)します。
WWWなしのほう
以下のサイトから記述をもらってきます(中ほどにある)。
基本wwwありのほうと同じことをしますが、こちらは/public_html/a11urr.orgディレクトリに.htaccessファイルがWordpressによって既に作成されているので1行目に割り込みでペーストします3。example.comを書き換えるのを忘れずに。
WordPressの設定
最後にWordPressでも設定をしておきます。
- WordPress管理画面(WordPress設定完了のお知らせメールにURL記載)にログイン(ログイン情報入手でキーチェーンに入れといたやつします
- 設定›一般設定のWordpressアドレス・サイトアドレスを”https://a11urr.org”(httpをhttpsにする/wwwなし)のように変更
確認
ブラウザキャッシュを消してからhttpでアクセスしてみたりwwwありでアクセスしてみたりして、ちゃんとリダイレクトされていることを確認します。キャッシュ消すの面倒であれば別ブラウザのプライベートウィンドウ使用。
注意点
こんなヘマをするのは私だけでしょうが私は.htaccessのファイル名が”.htaccess.txt”になってるのに気づかず1.5hを無駄にしました。 テキストエディットめ…
WordPressデータを移行
注意 以下の方法はエクスポートファイルのファイルサイズが512MB以下の時しかできません。500MB以上の場合はメディアファイルを手動で移動するか、プラグインを使わず移行してください。
XREAのサイトにちょうどいいのがあったので参考にやっていきます。
この方法のいいところは、ディレクトリ構造が保存されるので後のリダイレクト設定が1行で終わることです。あとページ中に書かれている旧ドメインを(なんとリンクじゃなくても)新ドメインに書き換えてくれます。
まずPHPのバージョンを揃えろと書いてあるので先ほども開いたコアサーバーのコンパネ›サイト設定›サイト一覧からwwwなしドメインをクリック、”サイト設定の変更”よりPHPバージョンを移行元のPHPバージョンと揃えます(移行元のPHPバージョンの設定ができるのであればなるべく新しいのに揃える)。
移行元サイトの設定
プラグイン”All-in-One WP Migration”をインストール&有効化します。その後ダッシュボードカラムに追加されたAll-in-One WP Migration›エクスポートを選択後、ファイルを選んで.wpressファイルを生成し、一旦PCにDLします。
私の場合ブラウザからDLしようと思っても3kBのファイルしか落とせなかったのでFTPでつないで/wp-content/ai1wm-backups/内の.wpressファイルをダウンロードしました。このファイルを他の人にダウンロードされたくない場合はダウンロード後サイト上のファイルを削除してください。
コアサーバーの設定
再度コアサーバーのWordPress管理画面にログイン後、こちらでも”All-in-One WP Migration”をインストール&有効化し、ダッシュボードカラムに追加されたAll-in-One WP Migration›インポートに移動します。移行元からDLした.wpressファイルを投げつけ、インポートします4。
インポートが完了したら、ポップアップ表示から”パーマリンク構造を保存する”をクリック、ログイン画面で”移行元“のログイン情報を入力します。
“パーマリンク設定”が表示されるのでそのまま”変更を保存”をクリック。
これで設定完了なはずなのでコアサーバーのページにアクセスしてみます。ディレクトリ構造が同一のまま表示できるはずです。
前のサイトのリダイレクト設定
今度は旧サイトの.htaccessを編集します。以下の一文だけ書きます(ドメインは書き換える)。
Redirect permanent / https://a11urr.org/
“All-in-One WP Migration”使用でディレクトリ構造そのまま移行できた場合はこれだけで前のURLを踏んでもコアサーバーの当該ページにリダイレクトされます。
最後に
プラグインの確認
プラグインも自動的に移行されますが、バックアップなど設定し直す必要のあるプラグインがある場合は忘れずに設定します。
サーバー契約更新をリマインドする
30日間無料で契約したと思いますが、契約更新をしないまま無料期間が終了すると今までの努力が水の泡となりますので契約更新を忘れずに。問題なく移行でき、すぐに契約更新をしてもいい場合はバリュードメインのコントロールパネルより更新します。
移行元サイトのデータの削除
しなくてもページの表示やリダイレクトには影響はありませんが残しておきたくない方は削除しましょう。旧サイトにアクセスしようと思ってもリダイレクトされてアクセスできない場合は前のサイトの.htaccessのリダイレクト設定を一度コメントアウトしてからブラウザキャッシュを削除してアクセスしたり、FTP経由でアクセスします。
- iOS版Pro買ってるのでユニバーサル購入でMac版使いたいな…(無理)
- FTPは暗号化されておらずセキュリティが脆弱なため。
- 間違っても#BIGIN WordPress ~ #END WordPress間に書かないこと。上書きされます。
- ブラウザ使用でのインポートも失敗する場合は”/public_html/[wwwなしドメイン]/wp-content/ai1wm-backups/”ディレクトリに.wpressファイルをアップロード後、URLからアップロードしたファイルのパスを投げつける。.wpressファイルを他の人にダウンロードされたくない場合は移行完了後サイト上の.wpressファイルを削除する。
コメントを残す