WordPress のサイト(このブログ)をさくらのVPS にサーバー移転する際につまづいたところまとめ

このブログ(WordPress)では少し前から「管理画面での操作が重く更新などがしづらい」「時間帯により表示速度が極端に遅くなる」「503エラーが発生する」など、サーバーが原因かなと思われる好ましくない現象が起こっていました…。

最近特にもろもろの現象が気になってきたため、普通のレンタルサーバーからさくらのVPS へサーバー移転しました。初めての VPS で不安もありましたが、こちらの記事 「サーバーってなに?」~初心者でもよくわかる!VPSによるWebサーバー構築講座(1) – さくらのナレッジ のおかげでスムーズにサーバーの設定を行うことがでました。

しかし、実際に WordPress を動かせるまでには、いくつかつまづいたところがあったのでその辺をまとめました。

私がつまづいたところ – 目次

1. WordPress の wp-config.php ファイルの作成ができない
2. サーバーを初期化したあと SSH で接続できない
3. WordPress でパーマリンク設定をデフォルトから変更すると 404 エラーがでる
4. さくらの管理画面でネームサーバーの設定ができない

1. WordPress の wp-config.php ファイルの作成ができない

サーバーに必要なソフトウェアをインストール・設定し、WordPress をいざインストールというところで、wp-config.php ファイルを WordPress 側で作成できませんでしたというようなエラー画面がでてしまいました。

また、サーバーの WordPress が入っているディレクトリへ、ファイルの作成・アップロードを直接行おうとしても Permission denied とエラーがでてしまい完了できませんでした。

原因と対処方法

Permission denied とのエラーの通り、パーミッションの設定がうまくできていなかったため、ファイルの作成などができなかったようです。

WordPress が入っているディレクトリのパーミッション変更することで解決しました。
以下のコマンドで、ディレクトリのパーミッションを変更できます。

chmod -R g+w /var/www/html

(※最初にパーミッションを 777 に設定するように記載しておりましたが、777 は危険なのでやめましょう…。)

2. サーバーを初期化したあと SSH で接続できない

上のパーミッションを変更する際に、間違えていろんなところのパーミッションを 777 にしてしまい、phpMyAdmin にログインできなくなってしまったり、いろいろおかしくなってしまったので、最初から全てのインストールをやりなおすことにしました。

さくらのVPS を初期化する

さくらのVPS サーバーの初期化は、「さくらのVPS – コントロールパネル」にログインし、サーバー一覧より現在のサーバーを選択→「OSインストール」から「標準OSインストール」をクリックするだけです。

さくらのVPS 管理画面

しばらくするとサーバーが再起動され、最初にさくらから提供された状態へ戻ります。

ssh でログインできない(その1)原因と対処方法

サーバーを初期化し、ssh でログインしようとしたら以下のようなエラーがでてログインできませんでした…。


ssh: connect to host <IPアドレス> port 22: Connection refused

これは、サーバーが再起動するのに時間がかかっていただけのようです、念の為もう一度 さくらの管理画面から再起動をかけ、しばらくしたら(私の場合は10分程度)エラーもでなくなりました。

ssh でログインできない(その2)原因と対処方法

先のエラーが解決しましたが、まだログインできません…。ログインを試みると今度は以下のようなエラーがでました。


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

ドキッとするようなエラーです。これはホスト側のPCが入れ替わった時にでる警告のようです。自分の PC に記録された接続リスト(?)のようなもの(known_hosts ファイル)の中から該当するサーバーの部分を削除することで解決しました。

以下のコマンドで known_hosts ファイルを開きます。

vim ~/.ssh/known_hosts

ファイルを開くと英数字の羅列で少しこわくなりますが、このファイル中の以下のようになっている、さくらのVPS のIPアドレス部分を削除し、保存すればOKです。


xxx.xx.xx.xxx ssh-rsa AA……(略)……==

これでやっとログインできるようになりました。

3. WordPress でパーマリンク設定をデフォルトから変更すると 404 エラーがでる

サーバーの設定をしなおし、無事 WordPress をインストールするところまですすみました。しかし、WordPress のパーマリンク設定をデフォルトの http://ドメイン/?p=記事id から別のパーマリンク形式へ変更すると、ホーム画面以外が全て 404 エラーで表示できなくなってしまいました。

原因と対処方法

404 エラーになってしまうのは、.htaccess ファイルが Apache から書き込み可能な状態でなかったため、WordPress で行ったパーマリンクの設定が .htaccess ファイルへ反映されていないことが原因でした。

この問題は mod_rewrite を有効にすることで解決しました。
以下のコマンドで設定ファイル(httpd.conf)を開きます。

vim /etc/httpd/conf/httpd.conf

httpd.conf ファイルの中から以下の行を探し、コメント化(行頭に#がついていないか)されていないか確認します。もしコメント化されていたら行頭の # を削除します。

LoadModule rewrite_module modules/mod_rewrite.so

つづいて、httpd.conf ファイルに以下を追加します。

<Directory "/var/www/html">
AllowOverride All
</Directory>

httpd.conf ファイルを保存して閉じたら、以下のコマンドで Apache を再起動します。

/etc/rc.d/init.d/httpd restart

これで、mod_rewrite が有効化されパーマリンクの変更ができるようになりました。

4. さくらの管理画面でネームサーバーの設定ができない

ドメインを旧サーバーから新サーバーへ切り替えるためには、ネームサーバを変更する必要があります。

さくらのVPS でのネームサーバー設定は、コントロールパネルの右上「ネームサーバ登録」から「さくらの会員メニュー」へ行き、下の方にある「新しいネームサーバの登録」から行うことができます。

さくらのVPS ネームサーバー設定画面へのリンク

…できるはずだったのですが、私の管理画面では契約ネームサーバが「0」で、ネームサーバの登録ができません…。

さくらのVPS 私の管理画面

原因と対処方法

この原因は、ただ単にさくらとの本契約がまだ終わっていなかったからでした…。「会員メニュー」から「本登録」を行うことで、ネームサーバ登録ができるようになりました!

さくらのVPS ネームサーバー登録画面

私の場合は設定終了後、ドメインの変更が完全に反映されるのには丸1日以上かかりました。


まだ、サーバーの仕組みをいまいち理解できていないところも多いので、少しずつ理解を深めていけたらなと思います。サーバー移転後は WordPress の管理画面もサクサク動くようになり快適です。

コメントを残す

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