古いPHP、QHM、MySQLから最新のWordPressに移行する方法
ここでは、PHPのバージョンが古くて、さらにQHMのバージョンが古い人が、WordPressへ移行する際の手順、注意点、ヒントをお伝えします。何年も前に、レンタルサーバーを契約し、QHMを使い続けている人は、参考にしてください。
目次
前提知識
古いシステムあるいは、PHPからバージョンアップを行う際、注意点が3つあります。
- 一時的にWebサイトが表示されなくなることがある
- 元どおりにできるようにバックアップを作成、手順を確認しておく
- 作業に自信がない場合で、重要なWebサイトの場合、専門家に依頼する
以下、専門家あるいは、ご自身で行うためのポイントを解説します。
モジュール版PHP と CGI版PHP
概要
一昔前は、レンタルサーバーでは、PHPは「モジュール版」と呼ばれる動作方法が主流でした。Apacheの一部として、PHPが動作する方式です。現在は、CGI版PHP(SuExec) という方式で動作させることが多く、こちらが主流になっています。
一昔前は、CGI版PHPは動作が遅いなどの問題がありましたが、PHPの進化、キャッシュ機能の発達によって、ほぼ変わらない状況です。現在では、特に不特定多数のユーザーで、Webサーバーを共用するレンタルサーバーでは、セキュリティの観点から、CGI版PHPが使われるようになっています。
発生する問題(1) : ファイル権限
以上のような背景から、PHPのバージョンを最新にアップする際に、単にPHPがアップするだけでなく動作方法が変わる(モジュール版から、CGI版に変更)レンタルサーバーが存在します。例えば、ドメインキングなどです。
この場合、PHPが作成したファイルが「Apache権限」で作成されおり、PHPアップデートすると、CGI版PHPとなり、ユーザー権限で動作することで、以前のPHPプログラムが作成したファイルに書き込めなくなるなどの問題が発生する時があります。
特に、フォルダの中にファイルを作成している場合 、FTPソフトを使ってもフォルダが削除できなくなることがあります。
このような問題が発生しないように、「事前にファイル権限を設定」してから、モジュール版PHPから、CGI版PHPに移行をしてください(バージョンアップのこと)。
権限変更の方法
まず、QHM側でファイル権限の修正を試みます。
設定 > ファイル権限設定 を開いて、「権限変更」のボタンを押します。それでも、変更できないファイルに関しては、こちらで用意したスクリプトを使って、ファイル権限を変更してください。
- 1
- ダウンロードする
writalbe.php - 2
- ファイルの編集
権限変更をしたいフォルダをDIR_NAMEに指定してください - 3
- レンタルサーバーにアップロード
- 4
- 上記のファイルにアクセス
ファイル権限が変更し終わると、一覧が表示されます。 - 5
- FTPソフトで不要なファイルを削除する(任意)
以下のファイルをPHPプログラムをダウンロードして、ファイル権限を変えたいフォルダを
補足
理由はわかりませんが、以下のように cacheqhm フォルダに大量のディレクトリがあり、その下にQHMのアップデート用のファイルが大量に見つかる人がいます。このような場合に、上記の方法が役立ちます。
発生する問題(2) : セッションの問題
概要
モジュール版とCGI版の切り替えで発生するもう一つの問題が「セッション」です。ログイン、ログアウトなどを管理する際、通常は「セッションファイル」を使います。このセッションファイルの権限の問題(書き込めない)で、動作しないことがあります。
解決する方法
ブラウザのクッキーを削除することで解決することが多いです。
MySQL に関わる問題
古いWordPressの問題
もし、QHMを使う以前にWordPressにチャレンジして、そのまま放置している場合、古いデータがデータベースに入っていることがあります。これらが邪魔をしてWordPressのインストールができない場合があります。
その場合は、古いデータを削除してください。
データベース接続ができない場合
MySQL 4.x と、 5.x ではパスワードの仕組みが違います。その結果、古いMySQLで設定しておいたパスワードでは、インストールなどができなくなることがあります。
この場合は、レンタルサーバーなどで「パスワードを再設定」すれば解決します。
PHP7 ではなく、PHP5.6 を使う
非常に古い状態からPHP7にして、QHMからWordPressに移行しようとすると、トラブルがたくさん発生します。
そこで、まずは、PHP5.6 にアップデートして、QHMも、WordPressも動く状態にします。その状態で、インポート作業を行い、WordPressが確実に動いている状態を作ってから、PHP7にアップデートすると良いでしょう。