WordPressのサーバー引越し苦行

新しいレンタルサーバーは順調に稼動しています。

稼動していなければこの記事は見れていない筈ですが、22日から23日の朝まではトップページだけで中身は絶対に見れて無かったです!

404エラーがでたり、
データベース接続エラーが出たり、

いやはや大変な状況でした。
なにしろ初めての移転作業をマニュアルで行ったので、新しいサーバーにブログデータをコピーした直後は穴だらけの結果に。
落ち込むと言うよりも、旧サーバーもあと5日しか使えないので、あせりました。しかし落ち着けよ、とネットで検索、先人達のお知恵を拝借してめでたく解決しました 😀 。

目次

サーバー移行作業概要

サーバー移転には新しくサーバーを契約し、旧サーバーに紐付けされていたドメインを新サーバーに移転(DNS書き換え)するだけでは終わりません。

ブログを構築しているデータ全て、つまりサーバーの中のwordpress構築ファイルと記事等が入っているPHPデータベースファイルをそれぞれ新サーバーにコピー転送する必要があります。詳細に書くとものすごく長くなるのでここでは<概要>に留めます。

手順の流れ

  1. 新規サーバー業者契約。
  2. 旧サーバー内のwordpressブログ関連のファイルをバックアップ機能を利用して自分のPCに保存した後、FTPソフト(FILE ZILLAまたは同等ソフト利用)で新しいサーバー内にコピー転送。
  3. PHP MY ADOMINを用いて旧サーバーのPHPデータファイルの内容をバックアップ、自己のPC内に保存。
    (このPHP MY ADOMINは通常どこのレンタルサーバーでもMY ACCOUNT内に設置されていますのでアイコンをクリックするだけで利用可)
  4. 上で保存したPHPバックアップファイルを新サーバー内にインポート。(先に新サーバーに空っぽのPHPデータベースを作っておく必要があります)
  5. 新サーバー内にコピーしたwp-confing.phpファイルの一部を新サーバーでの情報に書き換え。(日本のサーバーには無いのかも知れませんがサーバーのMYACCOUNT内のC-PANELでファイルマネージャーを開き、編集機能を使えば簡単。テキストファイル作成しサーバーに転送などは不要)
  6. 念のため.htaccessファイルも旧サーバーのものを新サーバーの同じ場所にコピペまたはファイル転送(その後サーバー利用にあわせて中身は勝手に書き換わります)
  7. wordpressの管理画面にログイン、左のサイドバーから<設定→パーマリンク設定>に行き、内容は変更せず、一番下の<変更を保存>ボタンを押す。
  8. ドメイン取得業者のサイトに入り、ドメインのDNSを新規サーバーのものに上書きして変更。
    *これは絶対に最後の最後に行います。

以上コレだけ。
ファイルコピーのあて先場所に間違いが無いか、(普通新サーバーのpublic.htmlの下にそっくりそのまま挿入)注意してコピー転送する必要があります。サーバー業者のマニュアルに従って行う必要がありますが、プラグイン無しでOKでした。

でも、wp-adminなど大きなフォルダーごと転送しようとするとエラーになる場合があって一部しか送れません。大きなフォルダーは一旦中を開けて小分けにして転送するとうまく行きます。

要は旧サーバーのクローンを新サーバーに作ることを念頭に置いて作業することなのですね。

wordpressは普通のサイトと違ってPHPデータベースの移転も必要なのでその一手間が必要ですが、これは基本的に設定ボタンを押せば一発でやってくれるので時間もかからず簡単です。PHPのデータのコピー移動には、C-PANELのファイルマネージャーはいじらなくてPHP MY ADOMINを利用してPCにバックアップをダウンロード、そのバックアップファイルをワンクリックで新サーバーにインポートすればOK、手間と言えばバックアップをデスクトップ等のローカルでわかりやすい場所に一時保管することでしょうか。

エラー

必要ファイルを全て新サーバーにコピーして、PHPデータベースもインポートしてドメイン登録先のDNSサーバー名も書き換えました。
そして早速サイトを開いてみたところ、

データベース接続確立エラー 

と表示され、サイトが開けません。ええっ、なんで???

しばし凍りつき、ググってみたところ、wp-confing.phpの内容を新サーバーでの情報に書き換えないと新しいサーバーの情報を拾ってくれないのだった、という結論に。

海外サーバーでは殆どがMy Account内にあるコントロールパネル(Cpanel)で自分のサーバースペースにあるデータやファイルをコントロールできるようになっています。このCpanelは既成品のパッケージのようなもので、どのレンタルサーバーも殆ど同じ仕様のものを使っています。そのためたとえサーバー業者を変えても操作は大体同じ、この中の<ファイルマネージャー>で保管してあるファイル群を開き、wp-confing.phpを探し、EDITコマンドタブをクリックするとファイルの中身を直接編集できます。
この場合、”ローカルパソコンの上でテキストファイルを特別に作成して編集しアップロードする”ことは不要!

例:下の赤字の部分は新サーバーにPHPデータベースを作った際自分で指定した名前、パスワードになります。これを以前からあったものに上書き+保管。
*下の例での名前、パスワードはlocalhostを除きダミーで本物ではありません。

/** WordPress のためのデータベース名 */
define('DB_NAME', 'abcde');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'sakura');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'pasuwado');
/** MySQL のホスト名 */
define('DB_HOST', 'localhost'); ---->殆どの場合localhostで大丈夫ですがサーバー業者のマニュアルに従ってください(下記参照)

サーバー業者によってlocalhostとは別の名称のホスト名が書かれているかも知れないのでlocalhostでまだエラーが出る場合はサーバー業者に確認する必要があります。

404 Not Found

これだけ修正したからもういいだろう、とサイトを開きました。
トップページはいい感じでちゃんと開いています。
それで、昨日アップした記事に行こうとしたら、

404 Not Found

ええーっ、もう直ったと思いきや・・・。また凍りつきです。
もう、頭痛い。

またまたググったら、ありました、wordpressでのこの種のエラーは要するにパーマリンクへ行くとダメってことですよね、それでwordpress管理画面左カラムの<設定>でパーマリンク設定を開き何も修正しないまま、<変更を保存>ボタンをクリックするといいそうです。
騙されたつもりでやったら、直りました、各記事をクリックしてもそれぞれの画面にちゃんと行けます。
*パーマリンクと言うのはメインのサイトアドレスの後ろに/がついている、各記事を表示した時ブラウザのアドレス表示部分に出てくるURLです。つまりはウェブサイトの各ページに対して個別に与えられているURLのことです。
例えば、https://sakuraex.eu/moving-to-new-server/ など。

これだけやって(ググッて調べて)やっと新しいサーバーにて稼動オーライ。

手間がかかったという気はあまりしませんが、どきどきしたりイライラしたりの初めてのサーバー移転作業でした。

サーバー移転が簡単に出来るプラグインもありますが、時にはサーバーの仕様や自分で作成しているブログの中身にもよってエラーが出る場合もあるそうなので、出来れば手動でされることがやはりベストだと思います。これでwordpressの仕組みにもある程度理解が進みますよ。

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次