サンバル
最新記事 by サンバル (全て見る)
- 長屋暮らしを終えた話 - 2023年8月15日
- wordpressのドメインを変更したので手順や注意点などをメモ(Xサーバーの場合) - 2020年6月28日
- 初LCC!ジェットスターで0歳乳児と帰省してきた - 2019年9月6日
ワケあって旧サイトを、新規に作成した本サイトに引っ越しをした。
ということでサイト引っ越し(ドメイン変更)の手順や注意点について書き残しておこうと思う。どなたかのお力になればうれしみ。
大まかな手順としては、
- ドメインを変えたいサイトからデータを抜く
- 新たにドメインを取得する
- 新規にサイトを作り、そこに旧サイトのデータを入れる
- 旧サイトを削除する
という流れ。さらに詳しい流れは以下目次を眺めるとざっくり掴めるよ。
なお前提条件として
- PCは mac を使用
- ドメイン取得先は お名前.comを利用
- サーバーは エックスサーバー を利用
- エディタは Visual Studio Code(VSCode)を使用
- FTPソフトは FileZilla を使用
という環境でのお話。
- 1. 1. お名前.comで新たにドメインを取得
- 2. 2. エックスサーバーから旧ブログのwordpressファイルを手元にダウンロード
- 3. 3. wp-config.phpからデータベースへの接続情報をメモしておく
- 4. 4. 取得したドメインをエックスサーバー に登録する
- 5. 5. 旧ブログのデータベースをエクスポート(ダウンロード)する
- 6. 6. 新しくデータベースを作成する
- 7. 7. 先ほどエクスポートしたデータをインポートする
- 8. 8. wp-config.phpの編集と保存全データ内のドメインの変更
- 9. 9. wordpressファイル群をサーバーへアップロードする
- 10. 10. インポートしたデータベースの中の旧ドメインを 「Search and Replace for WordPress Databases Script」 を使って新ドメインに置き換える
- 11. 11. 旧サイトの閉鎖(削除)方法
1. お名前.comで新たにドメインを取得
まず新しいドメインを取得。別にお名前.comじゃなくても全然OK。たまたま自分がここを使っていたのでそのまま今回も使ったまで。
お名前.comで取得したいドメインを入力&選択して「検索」
本サイトの edo-rhythm.comは幸い空きあり。チェックをして「お申し込みに進む」をクリック。
ドメイン、料金が問題なければ「次へ」をクリック。なお下にあるチェック項目はスルーでOKです。
あとは決済するだけ。
次にネームサーバーの設定。お名前.comNavi のトップページ(ログイン必須)にある「ネームサーバーを設定する」をクリック。
「1. ドメインの選択」から購入したドメインにチェックし、下にスクロールして「2. ネームサーバーの選択」に進む。
「2. ネームサーバーの選択」では「その他」タブをタップし、「その他のネームサーバーを使う」にチェックを入れ、エックスサーバーと紐づけるため、ネームーサーバー1〜5に以下のように「ns1.xserver.jp 〜 ns5.xsaver.jp」を入力する。5行ない場合は行追加ボタンで追加。
あとは確認ボタンを押して設定すれば完了。
2. エックスサーバーから旧ブログのwordpressファイルを手元にダウンロード
新ドメインをゲットしたら、次にサーバーに接続できるFTPソフト「FileZilla(ファイルジラ )」を使って旧ブログのwordpressファイルをダウンロードする。
FileZillaでサーバーに接続したら旧ブログドメイン(example.comとでもしよう)直下にある「public_html」フォルダの中のファイル&フォルダ群を丸ごと自分のPCにドラック&ドロップでダウンロードする。
3. wp-config.phpからデータベースへの接続情報をメモしておく
ダウンロードしたファイルの中の「wp-config.php」を開き、「ユーザー名」と「パスワード」をメモしておく。
ちなみにファイルを開くエディタはMicrosoftのVisual Studio Codeが多機能かつ軽量で超おすすめ。
4. 取得したドメインをエックスサーバー に登録する
エックスサーバー にログインし、「サーバー管理」ボタンをクリックしてサーバーパネルに入る。
サーバーパネルにある「ドメイン設定」をクリック
「ドメイン設定追加」タブをタップ。
ドメインを入力し、「無料独自SSL」と「Xアクセラレータ」はどちらもチェックして確認画面ボタンをクリック。問題なければ「追加する」で完了。
(自分は、本ブログのドメイン edo-rhythm.com を入力)
5. 旧ブログのデータベースをエクスポート(ダウンロード)する
データベースは簡単に言うと記事とかのこと。
先ほどダウンロードしたwordpressのファイル群に記事が含まれてると思っている人もいるかもしれんが、そこにない。なのでこちらもダウンロードする。
エックスサーバー のサーバーパネルにある「phpmyadmin(MySQL〇.〇)」をタップ
先ほど控えた「ユーザ名」と「パスワード」を入力
左の列にある、旧ブログのデータベースを選択(クリック)する。このデータベース名は上の黒い画像の中の29行目にある「Wordpressのためのデータベース名」のこと。
対象のデータベースをクリック後、エクスポートと書かれたタブをタップ
「詳細」を選択
必須ではないけど、以下にもチェックを自分は入れた。これは移行先のデータベースに同じ名前のテーブルがあった際に削除してくれるというもの。
他は特にいじる必要なくデフォルトのままでOk。ということで一番下にある「実行」ボタンをポチればデータベースが自分のPCにダウンロードされる。
6. 新しくデータベースを作成する
旧ブログから引っこ抜いた(エクスポートした)データを入れる(インポートする)先が必要なので、新しいデータベース(箱)を作成する。
エックスサーバー/サーバーパネルにある「MySQL設定」をクリック
「MySQL追加」タブをタップし、新規作成する「MySQLデータベース名」を入力し、「文字コード」でUTF-8 を選択したら確認画面ボタンをクリック。
ちなみに入力するデータベース名の前にある黒い四角部分は自身のサーバーIDで最初から入っている。簡単に言うと親みたいなもの。
以下画像の赤い四角部分が前画面で入力した新規データベース名。情報に誤りがなければ追加ボタンをクリック。
作成後、「MySQL一覧」で確認すると新たにデータベース(青枠)が追加されているのが確認できる。なお、緑枠部分のデータベースは元からあったデータベースで、これはさっきエクスポートしたデータのデータベースのことね。
↑この段階では「アクセス権所有ユーザ」は「ユーザーはいません」となっている。ユーザーを設定しないとデータベースは使えない。
ここにユーザーを追加するには、右隣の「アクセス権未所有ユーザ」からユーザーを選択して追加ボタンを押すことで「アクセス権所有ユーザ」を決められるが、まだユーザーを作成していないので既存のユーザーしか選択できない。
データベースごとにユーザーは分けた方が良いので、新たにユーザーを追加する。
「MySQLタブ」をタップして以下の通り選択&入力して確認画面に進む。
選択&入力情報に誤りがないことを確認し「追加ボタン」をクリック
「MySQL一覧」に戻ると、「アクセス権未所有ユーザ」の中に今作成したユーザーが選択肢として入っているので、それを選んで追加を押すと、右隣の「アクセス権所有ユーザ」に反映される。
ここまでできたら、作成したデータベースの
- データベース名
- ユーザー名
- パスワード
を控えておくと、あとで楽。
7. 先ほどエクスポートしたデータをインポートする
箱ができたので 「5. 旧ブログのデータベースをエクスポート(ダウンロード)する」 で引っこ抜いたデータを入れる。
サーバーパネルの「phpmyadmin(MySQL〇.〇)」をタップ
ログイン情報を求められるので、先ほど作成した際にメモった、「ユーザー名」と「パスワード」を入力。
ログインしたら、先ほど作成したデータベースをクリックし、インポートタブをタップ。
インポート画面にある「ファイル選択」ボタンからインポートするデータファイルを選択し、その他は特にいじらずに画面下の「実行」ボタンをクリック。
エラーがでなければ無事インポート完了。
8. wp-config.phpの編集と保存全データ内のドメインの変更
最初にダウンロードした旧ブログのファイル群の中の wp-config.php とファイル群の中にある旧ブログのドメインを新ドメインに変更する。
まずwp-config.phpを開く。
その中の29行目あたりにある
- データベース名
- データベースのユーザー名
- データベースのパスワード
を以下画像の通り修正する。
修正箇所は赤四角部分。
ここにを先ほどデータベース作成の際に作った情報に置き換えるだけ。くれぐれも空白を含めたり全角で入れたりしないように。
次にファイル群全体に渡って旧ドメインの記載がないかを調べ、もしあれば新しいドメインに置換する。
windowsならDevasという一括置換ソフトがあるが、macでは使えない。かといってあの大量のファイルを全部開いて一個一個確認するのは現実的ではない。
ということで、VSCode(黒いエディタ)の検索機能を使って対応する。
まず、保存したファイル群をVSCodeで開く。
次に左の上から2番目にある虫眼鏡アイコンをタップし検索画面に切り替える。
そして検索欄に旧ブログのドメインを入力する。この時
- http://
- https://
は付けずに〇〇○.comという風に検索対象を狭めた方が良さそう。例えばhttp://hoge.comなのに誤って、https://hoge.comとしてしまうと検索から漏れるからだ(そんな間違いするやつそういないと思うけど、念のため)
検索してヒットしすれば、欄下スペースにズラーっと結果が表示される。これを一つづつ開けて修正するのは手間なので、検索欄の下にある「置換」欄に置き換えたいドメインを入力し、横のボタンを押せば一括置換できる。
ちなみに自分の場合にはノーヒットだったので特に置換することはなかった。
9. wordpressファイル群をサーバーへアップロードする
前項「8. wp-config.phpの編集と保存全データ内のドメインの変更」をしたファイル群をサーバー内にある新ドメインフォルダ直下の「public_html」フォルダにFileZillaを使って今度はアップロードする。
10. インポートしたデータベースの中の旧ドメインを 「Search and Replace for WordPress Databases Script」 を使って新ドメインに置き換える
実は先ほど新データベースにインポートしたデータの中には旧ブログのドメインの記述が含まれている。よって各記事にちゃんとアクセスできるように新ドメインに置き換える必要がある。
https://旧ブログ.com/test/
↓
https://新ブログ.com/test/
のように変えるということ。
この置換は先ほどやったみたいにVSCodeでもできて問題なくできてしまうかもしれないが、絶対にオススメしない。
理由としては、文字列のサイズによって番号が割り当てられていて、単純に見た目を変えただけでは不整合が起きる可能性があるから。
なので、「Search and Replace for WordPress Databases Script」というツールを使って一括置換をする。
以下の通り入力し、送信すると登録したメールアドレスにファイルのダウンロードリンクがついているのでそのリンクからファイルをダウンロードする。
Search-Replace-DB-4.1.1.zipというZipファイルを解凍。
解凍したファイルをFileZillaで新ドメイン直下の「public_html」にアップロード。
次にブラウザに
http://新ドメイン/Search-Replace-DB-4.1.1
と打ち込む。自分の場合だと、新ドメイン/(さっきアップロードした)ファイル名= http://edo-rhythm.com/Search-Replace-DB-4.1.1 となる。
アクセスすると次のような画面がでるので、以下のように情報を入力し、「Test connection」をクリックする。
なお、入力するドメインは、http:// や https:// は入れない方がベターとの情報があり、自分はそれにしたがってそれらは含まずに入力した。
「Test connection」をクリックしてエラーがでなければその下にある「Do a safe test run」をクリックする。
エラーがでなければ、最後のボタン「Search and Replace」を押して一括置換を実行する。
エラーがでなければ完了。
あと超絶重要な注意点として、作業終了後は必ずサーバーからこの「Search-Replace-DB-4.1.1」フォルダは消し去ること!!
ドメイン+Search-Replace-DB-4.1.1でアクセス(ハッキング)されたら色々改ざんされるリスクあるから必ずこのフォルダは消し去るべし。
ということで、これがドメイン変更の一連の流れ。
11. 旧サイトの閉鎖(削除)方法
旧サイトから本サイトへのリダイレクト設定はしていない。なので、旧サイトは削除する。
サイトの削除は超カンタン。
やることは、
- サーバーからドメイン(フォルダ)を削除
- 旧サイトのデータベースとユーザーを削除
の2つだけ。ドメイン購入先(自分の場合はお名前.com)での停止はしてもしなくてもOK(なはず)。とりあえず次の更新の時に更新しなければ自動停止になると思うので特に何もやっていない。
まず、サーバーからドメイン(フォルダ)削除から。
エックスサーバー のサーバーパネルにログインして、「設定対象ドメイン」が未指定であることを確認して、「ドメイン設定」をクリック。(設定対象を未指定にしておかないと削除できない)
削除したいドメインにある「削除」ボタンを押す(確認画面が出てもそのまま削除すればOK)
次にデータベースを削除する。
同じくサーバーパネルから「MySQL設定」をクリック。
「MySQL一覧」タブにある削除する(旧サイトの)データベースの「削除」ボタンで削除。
削除したデータベースにアクセス権のあるユーザーも削除。ただこれは任意。
当該ユーザーを「削除」ボタンで削除。
これでサイトの引っ越し(ドメイン変更)は完了。
作業してると必ず膝の上に乗っかってくる娘。PCの真似してトイレちゃんを横におくところがウケる。
最初のうちは神妙にしていてカワイイのだが…
数分すると毎度暴れ始める…
娘と戦いもあり、この記事書くのめちゃめちゃ時間かかったわ(笑)