はじめに
当ブログ(WordPress)をさくらのレンタルサーバーからさくらのVPSに引っ越した。ネットの情報のおかげで、OSのインストールからWordPressの設置まで全てうまく行ったのだが、ハマリ事も相当多く、全ての動作を確認するまで3、4日ほど時間が掛かった。当記事で特にさくらのVPSにWordPressを移行する際にハマることを全て書き出せたら、と思う。
ちなみに私の場合、WordPress関連のファイルを全て移動、移転先では「https://123.456.789.987/blog/」の様なIPアドレスでアクセスしながら動作テスト。チェックを終えてから、ドメインを移行し、ドメインが浸透した後、再びbono-ism.comのドメインでアクセスしながらチェック、という流れで作業した。
私の環境
さくらVPS 512M
Cent OS 6.8
Apache 2.2.15(UNIX)
mysql Ver 14.14 Distrib 5.1.73
OSのインストールからWordPressのインストールまで
いきなりリンク先記事紹介で申し訳ないが、下記の記事で、OS、データベース、ウェブアプリといったサーバーの基本的事項からWordPressのインストールまで全て分かる。
「サーバーってなに?」?初心者でもよくわかる!VPSによるWebサーバー構築講座(1) – さくらのナレッジ
ただ、上記記事でひとつ気をつけなくてはならないのが、index.phpの動作を確認するページでそのindex.phpのシンタックス(文法)が微妙に間違ってるとこ。
<html> <head> <title>PHP Test</title> </head> <body> <?php echo '<p>Hello World</p>'; ?> </body> </html>
これで無事、表示出来るはず。
WordPressの移行
移行するファイルはサーバー上にあるWordPress関連ファイルとデータベースの2つに別れる。
データベースの書き出しは、さくらのレンタルサーバーの場合、コントロールパネル→データベースの設定→管理ツール ログイン で、phpMyAdminのページにたどり着くので、そこよりダウンロード。(さくらのレンタルサーバーの場合、ログインするサーバーをきちんと選択すること。でないとサーバーにアクセス出来ない。)
データベースをエクスポートする際は上記写真の○印のところのチェックを忘れずに。インポートで特に迷う場面はないように思う。(強いて指摘するなら、新規データベース作成時のMySQL 接続の照合順序は「utf8_general_ci」で)
WordPress関連のファイルはまるごとFTPアプリでダウンロード。そして移転先のサーバーにアップロードするだけ。ただし、アップロードしたファイルの権限はFTPアプリでログインしたユーザーの権限しか持たないので、SSHでログインし、権限を変える。上記で挙げたさくらのナレッジのサイトに従うなら下記の通り。
# chown -R apache:vpsuser * # chmod -R g+w *
apacheが所有者になっていないと「.htaccess」や「wp-config.php」のファイルの自動更新をWordPressがやってくれないので注意。
後、FTPアプリの注意点として、テキストエンコーディングに気をつけること。例えば、日本語名の付いた写真ファイル(キャプチャ.pngとか)をそのままアップロードしているときは、ダウンロード時、アップロード時、テキストエンコーディングをUTF-8に合わせて置かないと文字化けしてしまう。
WordPress関連ファイルを全て移動させてから
残念ながら、ファイルを全て移動させたら終わりではない(笑)
WordPressまるごとそのまま移転であれば、「wp-config.php」内にデータベースへのリンク先情報が記載されているので、内容を引越し後のデータベース情報に書き換える。FTPからダウンロードして書き換えることもできるが、所有者、グループ共に権限をapacheしか持っていない場合もあるので、その時はSSHからroot権限で編集。
さて、これで無事トップページは表示されるが、記事単体を見ようと思ったら見事、リンク切れを起こしている。 引越し後のサイトは「https://123.456.789.987/blog/」の様な形で取り敢えずIPアドレスから入るのだが、リンク切れのページは全て「https://bono-ism.com/blog」の方に行っている。(※このブログの場合) ということは、今回はドメインは一切弄らず、いずれ元のドメインに戻すのだから、このままでもいいと言えばいいのだが、現状では全く動作テストを出来ないので、全てのリンクを有効にする為、データベース内の「https://bono-ism.com/blog」にリンクされているデータをすべて「https://123.456.789.987/blog/」(※例です)に向く様に訂正する必要がある。そこでデータベース内のリンクを全て変更するのだが、そこで使うのはSearch-Replace-DB-masterというPHPファイル。ダウンロード先は下記。
詳しい使い方はこちらに。
WordPressでドメインやディレクトリ変更 – Qiita
これらは全ての検証を終えて、ドメインも付け替えた後、再びSearch-Replace-DB-masterを使ってリンクを元のドメインに戻しておく。
ドメインの付け替え
意外とよく分からないのがドメインの付け替え。この方は私と同じムームードメインで取得したドメインを利用されているので、一番分かりやすかった。
さくらVPSにムームードメインで取得した独自ドメインを設定する | Androidアプリ開発@つくばの日記
さくらVPSのダッシュボードのネームサーバーの登録のボタンの位置が分かりづらいのと、お試し期間中ではそもそも登録出来ないのがポイント(笑)
他にも、もしかしたら、特にテスト中にリンクにまつわる色々なトラブルがあるかもしれない。上記には挙げなかったが、テスト中はWordPress内のダッシュボード→設定→一般 で、アドレスも一時的に変えて置かなければならないだろうし・・・。ただ、通常のWordPress表示における移転作業にまつわる問題はこれでおおよそ解決していると思う。
さて、ここから先はSSL化だが、ここから先が本当にハマって・・・しかし、SSL化は対応してる方もまだ少ないだろうし、ここからもちょっと長いので、SSL化の話は次回に譲りたいと思う。