AWSがあまりにも高くて悩んでたのですが思い切って引っ越しすることにしました。
やってみて「もっと早くにやればよかった」思うくらい楽にいけました。
移行にあたって必要な項目ごとに書いていくので必要なことについて知りたい場合もこのページを参考にしていただければと。
※XSERVERへの移行前提で書いていきますが、別のホスティングサービス(さくらとか)への移行の場合もやることは変わらないです。
記事最後にも載せますが、こういったサービスもあります。
XSERVER(移行先ホスティングサービス)を契約
まずは事前に移行先となるサービスの契約をしておかないとなりません。
※契約後サーバへのHTTPアクセスはすぐにできるようにならないので当日に契約してしまうとその日のうちに引っ越しが完了できません。
(できるにはできるけど1日か2日、ブログにアクセスできない時間が発生してしまいます)
https://www.xserver.ne.jp/
僕はX10プランにしました。
※PVが1日に3万とか来るようなサイト出ない限りX10で十分かと
即日で契約できました。
ドメインの設定。(XSERVERのサーバパネル上での作業です)
トップから【ドメイン設定】に飛んで、
chat-rate.com(自分のブログのドメイン)
を追加
mysql(DB)の作成(XSERVERのサーバパネル上での作業です)
トップから【MySQL設定】に飛んで、
【MySQL追加】からDB名を設定して文字コードは【UTF-8】を設定して作成します。
合わせてユーザの作成もやっておきましょう。
※データベースとユーザを作ったら作ったデータベースとユーザとの紐付けないといけないので、
【Mysql一覧】タブから【アクセス権未所有ユーザ】というところに作ったユーザがいるはずなので忘れずに【追加】をしてください。
SSHの有効化(必要な人のみ)
僕はSSHで接続して色々したいので有効化させました。
トップから【SSH設定】からできました。
移行元のデータベースだとかをエクスポートする前にちょっと待った!
この流れでエクスポート作業をやってしまってもいいのですが
その前にサーバにちゃんとHTTPアクセスできるかどうかを確認しておきましょう。
なのですが、まだ
chat-rate.com
のネームサーバは移行前のままなので当然アクセスしても前のサーバのほうに飛んでってしまいます。
なので僕はXSERVER上の【サーバ情報】から見れるIPアドレスを直にうって確認しようとしたのですが、
"これは誤りです"
LBでなんかやってるのかも知りません。どういう仕組みかはわかりませんがいけないようです。
というわけなので、PCの中にあるhostsファイルに、
<IPアドレス> chat-rate.com
というような行を追加してあげましょう。(<IPアドレス>はXSERVER上の【サーバ情報】で見れるIPアドレスです)
こうすることで、自分のPCからのみ、ブラウザでchat-rate.comにアクセスすると、XSERVERのほうサーバにアクセスできるのです。
※「無効なURLです」みたいなページがでてきたらそれはまだアクセスができていないので時間をおいてチャレンジしましょう。
だいたい数時間から2日間はかかるそうです。
データベースのエクスポート
どこのサイトみてもPHPmyadminからデータベースをエクスポートしろって書いてあるけど僕のブログはAWSで自前で構築してて、
phpmyadminなんてもん入れてないしわざわざそれだけのためにphpmyadmin入れるのも面倒なのでWPに下記のプラグインを入れました。
All-in-One WP Migration
WPにこいつをインストールしてエクスポート。
エクスポートするときはFILEを選択して自分のPCのローカルに落としましょう。
※注意※
エクスポートの結果が512M以上だと移行先でインポートができません。(有料版を買うとできる)
僕は最初これに引っかかって詰んだのですが、
画像ファイルのエクスポートは削れば余裕で大丈夫でした。
(画像のデータは下記でDLするコンテンツ一式の中に含まれているので問題ナッスィングです)
これでDBエクスポートは完了です。
WPのコンテンツ一式をダウンロード
サーバからコンテンツを落としてこなければなりません。
僕はMacなのでcyberduckというツールを使いました。
https://cyberduck.io/
※Appstoreから落とそうとすると有料とでますが、普通にfor macのを選択すれば無料で落とせます。
接続の仕方はFTPでいいと思います。
XSERVERのサーバパネル上の、
【FTPアカウント設定】の欄から得られる情報をもとに接続が可能です。
wp-config.phpを編集
ダウンロードしてきた移行前のコンテンツの中にある、
wp-config.phpを編集します。
1 2 3 4 5 6 7 8 9 10 11 |
/** The name of the database for WordPress */ define('DB_NAME', $db_data['database']); /** MySQL database username */ define('DB_USER', $db_data['username']); /** MySQL database password */ define('DB_PASSWORD', $db_data['password']); /** MySQL hostname */ define('DB_HOST', $db_data['host']); |
- DB_NAME
- DB_USER
- DB_PASSWORD
- DB_HOST
設定している行があるのでそれを移行先の情報に変えます。
移行先(XSERVERへアップロード)
wp-config.phpを編集したらいよいよアップロードです。
先程使ったcyberduckを使います。
注意ですが、XSERVER上のapacheのドキュメントルートは、
/home/<アカウント名>/<ブログのドメイン>/public_html
となってます。(これは多分変更できないです)
なので、public_htmlというディレクトリの直下に、
index.phpなどが置かれるようにアップロードしてあげる必要があります。
順調にいけばこれで引っ越しは完了です。
動作確認
自分のブログのURLにアクセスして確認していきましょう。
「うわ!なんか全然わけわからんページが表示されてる!!」
ってなっても世界の皆さんは以前のサーバのほうにアクセスしているので安心してください。
今移行先のサーバのブログにアクセスできるのはhostsを書き換えてる本人だけですので、
この状況でしっかり動作を確認する感じです。
観点としては、
- トップページが表示されるか
- 記事ページは見れるか
- 記事一覧の2ページ目は見れるか
- 管理画面は見れるか
- 投稿はできるか
これくらいかと(僕は↑だけ確認しました)
ちなみに僕の場合はトップは見れたのですが記事ページが見れませんでした。(残念!!)
原因は僕はパーマリンクの設定をカスタムにしていたため、
【WP管理画面】→【設定】→【パーマリンク設定】
から改めて設定してあげる必要がありました。
※設定画面を見ると【カスタム設定】にチェックが入ってて問題なさげに見えるのですがそのまま【変更を保存】を押してあげないと駄目なようです。
ここまでやって僕は一通り引っ越し完了としました。
というわけで後はネームサーバの変更ですね。
ネームサーバの変更
XSERVER上のサーバパネルの【サーバ情報】に飛ぶと、
こういうのがあるのでこれをドメインをとったネームサービス(ムームードメインやお名前.com)のほうに登録してあげるのです。(ブログを開設したときから全然触ってないからどこのネームサービス使ってたか忘れちゃってたのですがこればかりは頑張って思い出すしかないですw)
とわいえwhoisとかで調べればわかったかもw
ネームサーバの反映にはだいたい1日はかかります。
じっくり待ちましょう。
コマンドプロンプトやターミナルで、
nslookup -type=ns <ブログのドメイン名>
を打つとネームサーバが引けるのでそれでXSERVERのになっていたらOKです。
そしたら、hostsに書いた行を削除しておきましょう。
ネームサーバが切り替わってブログへのアクセスができるようになったら引っ越しは完全に完了です。お疲れ様でしたって感じです。
忘れずに引越し前のサーバのほうの契約などを止めておきましょうww
以上です!
サーバの引っ越し、移行ってかなりハードルが高いと思ってしまいがちですが思い切ってやってみると色々なことが学べて楽しいものです。(このブログもそうですが、たくさんの人が知見をネット残しているので躓いても調べればどうにでもなります)
色々と調べればなんでもできる世の中ですが実際やってみると、
- あれ・・・なんか書いてあるとおりにいかない
- 手順ミスってなんかわけわかんなくなっちゃった\(^o^)/
ってなることもおうおうにあります。
そういった不安がある方は、
こういったサービスもあるのでこちらのご利用も検討してみてもいいかもしれません。
有料にはなりますが実際引っ越しの作業が滞りなく進められる人はほぼいないと思います。(それを生業にしていない限り絶対にどこかしらで躓きます。)
場合によっては今まで書いた記事が全部消えた!!とかも全然ありえる話なので、そうなっちゃったらどうしようとかの不安をなくし、全部丸投げで安心したいかたにはおすすめかと思います。