さくらインターネットのレンタルサーバ(スタンダード)で運用しているサーバがあるのですが、先日、WordPressがちょっと早くなるサーバへの乗り換えキャンペーンのメールが届きました。PHP7のモジュールモードを使用することでWordPressのレスポンスが改善されるとのことです。
現在使っているサーバは、夜10時前後の時間帯になると重くなりWordPressの管理画面の接続が切れてしまったりするので、多少でも速くなればと思って乗り換えを行うことにしました。
乗り換えのおおまかな手順は下記のとおりです。(スタンダード版からスタンダード版への乗り換えです)
旧サーバにSSHログインし、www フォルダ以下をアーカイブする。

tar zcf ./www.tgz ./www

www.tgz ファイルを新サーバに転送する。転送方法はいろいろありますが、サーバ間で直接転送してみました。転送先サーバのパスワードが求められるので入力するとコピーが行われます。

scp www.tgz ユーザー名@新サーバ.sakura.ne.jp:www.tgz

新サーバで展開します。

tar zxf ./www.tgz

旧サーバのコントロールパネルでドメイン名を解除します。
・SSLを解除
・ドメインを解除
※ドメインを解除した後は2時間は再設定ができないそうですので、待ちます。
新サーバのコントロールパネルでドメイン名を設定します。
・ドメイン名を設定
・SSLを設定
※ドメイン名を設定したあとDNSに反映されるのに30分~1時間かかるとのことですので、SSLを設定するのは少し待ってからにします。
ドメイン名に設定してあるDNSサーバ情報は変更しなくても大丈夫です。
静的なホームページの場合はここまでの手順で引っ越しが完了すると思いますが、WordPressやPHPスクリプトを駆使しているサイトの場合はもうちょっと作業が必要になります。
まずはWordPressのデータベースを移行します。
旧サーバのデータベース管理画面(PHPMyAdmin)に接続し、データベースをエクスポートします。エクスポートファイルはパソコンにダウンロードされます。
新サーバのコントロールパネルで新しいデータベースを作成します。DBサーバのホスト名が新しいものになるので、mysqlxxx.db.sakura.ne.jp のホスト名をメモしておきます。また、新サーバになるときユーザー名が変わっているはずですので、データベース名の前半部分が変わります。
新サーバのデータベース管理画面(PHPMyAdmin)に接続し、データベースをインポートします。パソコンにダウンロードしたエクスポートファイルを指定しアップロードします。
WordPressの設定ファイルを編集します。

vi wp-config.php

define(‘DB_NAME’, ‘username_wpblog’); ←上記で作成したDB名を指定します
define(‘DB_USER’, ‘username’); ←新サーバでのユーザー名に変更します
define(‘DB_PASSWORD’, ‘パスワード’); ←パスワードはDBを作成したときに指定したものを入力します
define(‘DB_HOST’, ‘mysqlxxx.db.sakura.ne.jp’); ←上記でメモしたホスト名を入力します
今回の乗り換えで PHP5 → PHP7 に変わったため、いくつか影響が出ている箇所がありました。
プラグイン qtranslator-X
関数呼び出しで参照渡しをしている箇所があるのですが、& 記号を指定する必要がなくなったため & 記号を削除する必要があります。
qtranslate-frontend.php の 523行目と597行目
split() が使えない
Fatal error: Uncaught Error: Call to undefined function split()
昔自作したソースコードの中にあった split() がついにエラーになりました。explode() に置き換えます。
以上のような箇所を修正することで、WordPressサイトが動き始めました。それほど混む時間帯でなくてもレスポンスが向上していることが実感でき、ちょっとだけ嬉しくなりました。
夜10時頃に記事の更新をしてみたところ問題なく更新ができ、サムネイルの生成も以前よりずっと短時間で終わるようになりました。サイトのメンテナンスを頑張らなければ。。

カテゴリー: サーバ関連

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

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