突然ですが、このブログはお名前.comのSDサーバで運用されていました。
このSDサーバーなんですけど、ほんと速度が遅くてこのサイトでもサイト内の画像がすべて表示されるのに3秒以上、すべての処理が終了するのに10秒くらいかかってました。(証拠を残してませんでした)
結構重めのサイトを運用している人はページ全体が表示されるのに5秒以上かかっていいた人もいたそうです。
最近のデバイスはノートパソコンでもスマホでもタブレットも超絶オーバースペックなのでローカルの環境で処理が遅れてサイトが表示されないって事は、僕が今使っている2万円台のhuaweiのスマホを考えると、1万円台の中華スマホかスペックが終わっていた一昔目の日本の家電メーカーのスマホを使っていない限りありえないと思います。
通信環境も今はモバイル回線でも大きな画像を何枚も読み込めますしね。
昔は我慢できてたことも、最近はめったにサイトの読み込みに時間がかかるってことがなくなったのでみんな我慢できなくなりました。(昔はそれが当たり前だった)
で、いままでお名前.comのSDサーバーを使っていた僕はわざわざ僕のブログに訪れてきてくれた人をもれなくイラっとさせていたわけです。これは大問題です。
そもそも、サーバーのスペックは低くて、24時間サポートは24時間つながらなくて(僕は一度もつながったことない)、コントロールパネルは古臭いしいじれる項目が少ないサーバーにレンタルサーバーの相場の額を払うのはどうかと思いました。
なら乗り換えればいいじゃんって話ですが、乗り換えるのは億劫でリスクもあるのでなかなか乗り換えられないんです。それを運営も知ってるから料金の値下げはしません。
じゃあなんでそんなに悪名高いお名前.comでサーバー借りたんかというと、多順にドメインをとるついで契約できたからで情弱だった僕が悪いんです。
お名前.comでもSSDサーバーが使用可能に
ドメインの更新時に気づいたのですが、そんなお名前ドットコムでレンタルサーバーの新サービスが始まってました。
その名もRSプランで僕が見る限る料金はそのままで(場合によっては安い)、スペックはSDプランの完全上位互換です。
何が良くなったって、一番デカいのがSSDが標準搭載になったことです。今時ハードディスクなんて流行りません笑。
あと、コントロールパネルの操作性が格段に上がって、例えばphp.iniといった設定ファイルがGUIで簡単にいじれるようになりました。
WordPressも基本コントロールパネルでポチポチいじれます。インストールは前からできましたが、SSLかとか移行とかがボタン一つでできるようになりました(SDからRSのWordpressの移行はできなかった)。
たぶんですが、Wordpressのダッシュボードの操作スピードも上がったのでおそらくCPUの性能もかなり上がったのではないでしょうか(個人的にはここが一番うれしい)。
SDサーバーからRSサーバーへの移行は簡単!?
RSサーバーのWoredpress移行機能はこのブログには使えませんでした。(変な設定とかプラグインがあるのか、phpとかmysqlのバージョンの問題か)
All in one WP MigrationもSDサーバにおいてあったWordpressではファイルのエクスポート中にエラーが出ていました。
SDサーバー時代はよくプラグイン関係の謎のエラー(スペック不足的な)に悩ませれていましたが、RSサーバーでは軒並み使えてます。
で結局文明の利器?を使うのはあきらめて、FTPという古の方法でWPのインストールファイルとSQLのデータベースを丸っと移したのでそのやり方を残しておきます。
多少設定をいじるところがありますが、ドメインが変わらない場合はダウンロードとアップロードをずっと繰り返すだけです。
SQL内のWordpressのデータベースをダウンロード
SDサーバーのコントロール画面に入って「データベース」→「mySQL」をクリック
phpmyadminにログインしたら(普通にIDとパスワード入れるだけです)、Wordpressのデータベース(デフォルトだとwpなんちゃらってなってます)。
フォーマットはSQL、エンコーディングはましでいいと思います(普通にunicodeになるはず)。
たぶん古いバージョンだと詳細に圧縮とかあると思うんですけどどうせローカルで展開することになるんで回線の都合で選んでください(たぶん10Mから50Mくらいだと思います)。
WordPressのインストールファイルをダウンロード
写真はFileZillaの画面です。普通にドメインのトップのファイル(公開されているところ)を全部ローカルに落としてください。Wordpressだけ落としたい人はインストールファイルだけでもOKです(多分wp)。
FFFTPで何度か挑戦しましたがファイルが大きすぎて失敗しました。
WordPressは最低でも2G以上あるので、ローカル容量が気になる人は外付けのデバイスに落としておくといいかもしれません(失敗するリスクは上がる)。あとはサーバー間を直接やり取りするのもアリなのかもです。
あとでバージョン問題に悩ませれないために、FTPでダウウンロードする前にWordpressを最新にアップロードして余計なプラグインは無効化しておくといいかもしれません。
ここで、ファイルが破損しているとあとで復旧させられなくなるので慎重に。文章はデータベースに保存させれますが、写真やテーマはここにあります。僕は一度移行後にすべての写真データが消えて復旧できなくなったことがあります。
お名前.comで新しくRSプランに加入
普通にRSプランのサーバーを借ります。移行期間は二つのサーバーを借りることになりますが、2か月間は無料なので金銭的にはむしろプラスです。
共用ドメインが一個ついてきますが、安いドメインなら無料で作れるので適度な独自ドメインを作っておきましょう。個人的にはなんとなく共有ドメインがあるのが便利だなと思います。もし、SDサーバに共有ドメインがあったらこの作業もだいぶ楽なんですけど・・・。
ここから行けば、5分くらいで契約できます。
データベースを新しいRSサーバーにアップロード
RSのコントロールパネルからphpmyadminに飛んでローカルに保存していたwordpressのデータベースをインポートしてください。
ここで、一つ注意したいのがそのままインポートするのではなく、まずサーバーのコントロール画面で「データベース」→「データベース一覧」→「データベース追加」から適当な名前のデータベースを新規作成しておいてください。
で、今度はユーザー一覧から新しいWwordpress用のユーザーを作って、「詳細」からさっき作った空のデータベースの編集権を与えときます。(ここで設定したことは後で使います。)
データべースを作る理由は、デフォルトのユーザーはphpmyadmin上で新規データベースを作る権限がないのでインポートしても保存先のデータベースがなく失敗します。なんで、あらかじめ空のデータベースを作ってそっちにインポートしたデータを上書きさせます。
で、ユーザーを作り直す理由は、デフォルトの設定が変わるといちいちwordpressの設定も変えるはめになるからです(勝手にパスワードが変わるということがあった)。
そしたら、今度はローカルに保存しているデータを書き換えます。
20行目くらいのところに
CREATE DATABASE tips_db DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
とあるので、それを消してください。
さらに
USE "データベース名"
のところをさっきの作ったデータベースに書き換えてください。
こんな感じになると思います。
そしたらphpmyadminに戻って「インポート」から編集済みのSQLファイルを選択して実行してください。
これで、データベースの移行は終了です。
SDサーバーの解約&ドメインの移行
ドメインを移行させるのですが、SDサーバーに登録されているドメインが一つだけだと、そのドメインを外すことができないのでここでSDサーバーを解約する必要があります。サーバーを解約するということはバックアップが失敗していたら元に戻せなくなるという意味なので若干リスキーです。
僕は一度、RSサーバーの共用ドメインでサイト意向をリハーサルしてから解約しました。(ドメインが変わるのでデータベースを書き換える必要があります)
普通に解約すればいいと思うんですが、運営がメールで連絡をくれといってるので素直にそうしましょう。たしか、フォームもあったのですが行方不明になりました。
WordPressのインストールファイル
いよいよ最終ステップです。久しぶりに長い記事を書いたので疲れてきました笑。
SDサーバーが消えたのを確認したら、RSサーバーにドメインを追加してください。
ドメイン追加後、FTPでドメインの公開ファイルにインストールファイルを追加するのですが、その前にインストールファイルの最初のディレクトリにあるwp-config.phpをさっき作ったユーザーとデータベースの内容に書き換えます。
書き換える項目はDB_NAME、DB_USER、DB_PASSWORD、DB_HOSTです。DB_HOSTはデータベースの詳細で確認できるonamae.ne.jpでおわるURLのことです。
最後にある
ini_set('display_errors', 0); error_reporting(0);
はPHPにエラーがあってもちゃんと表示させてねというおまじないみたいです。
ちなみにドメインを変えた人やリハーサルとして違うドメインにインストールした人はここに
define('WP_HOME','サイトのトップページのURL'); define('WP_SITEURL','WordpressがインストールされているURL');
を追加すれば行けました。(ほんとはデータベースを書き換える必要があるみたい・・・)
たぶんですが、Wordpressの移行に失敗する人はだいたいここでミスってます。
この後、今までドメインの名前のディレクトリの直下にバックアップしたファイルをFTPで戻せば一応すべての手順が終わります。
今まで通りのログイン用のURLを打ってログイン画面が表示されれば完了です。お疲れさまでした。
僕は3回ぐらいエラーが出てあーだこーだしましたが、この手順でやったらうまくいきました。あくまで僕の環境の話です。
それでは。