2017年03月01日

さくらレンサバからさくらVPS(CentOS7/PHP7.1)へのWORDPRESS移行

ネットワーク的に問題のある環境であるためプラグインを使っての移行が難しく、手動で移行することにした。ドメイン名は変えない前提です。

■前準備:
@レンサバ側で、phpMyadminでWORDPRESSのテーブルの全エクスポート。デフォルトであればwp_ではじめるテーブル全てです。
Aレンサバ側で、WORDPRESSの対象フォルダを丸ごとバックアップ。コマンドは、tar -cvzf wordpress.tar.gz (WORDPRESS設置フォルダ)
@とAをVPS側にアップロード。

■初期移行
VPS側で@をphpMyAdminを使ってインポート。注意するのはSQL互換モードでにMySQL40を指定することくらい。
VPS側でAを丸ごと解凍。tar -xvzf wordpress.tar.gz

■接続DBの変更
wp-config.phpを開き、以下の4項目をVPSの新環境に合わせて設定。
@
/** WordPress のためのデータベース名 */
define('DB_NAME', 'database_name_here');
A
/** MySQL データベースのユーザー名 */
define('DB_USER', 'username_here');
B
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'password_here');
C
/** MySQL のホスト名 */
define('DB_HOST', 'localhost');@

■ドメイン情報の切替
ドメインの指すIPアドレスを変更。ここは各ネームサーバやDNSのマニュアルに従ってください。

■課題(1)500エラー発生
さて、ここまででうまくいくはずだったのですが、トップページ表示で500エラーが発生しました。
HTTPエラーを見るに、あるプラグインでPHP7に関するエラーが発生している模様。
さて、このプラグインを外したいが管理画面も開かない状況なので簡単にはできない。
ググった結果、テーブルwp-optionの中のoption_nameがactive_pluginというカラムのoption_valueの値を変えてやれば、プラグインを無効にできるらしい。option_valueの変更のポイントは3つ
@該当のプラグインの記述を削除。僕の場合は6項目目のgoogle-sitemap-generatorだったので「i:6;s:53:"google-news-sitemap-generator/google-news-sitemap.php";」の記述を削除
A全体のプラグイン記述数を変更。最初に記載されている「a:xx」(※xxは数字)なのでxxを1減らした値で上書きする(9なら8で上書きする)
B6項目目以降の項目番号を変更。今回は@に記載のように6個目の項目を削除したのでそれ以降の項目番号を1つずつ減らしてやる。たとえば「i:7;」の項目を「i:6;」に、「i:8;」の項目を「i:7;」に変更など、最後の数字まですべて行う。

■課題(2)コンテンツ非表示
単純なブログだったのですが、ぺージ内の記事リンクは表示されるのですが、肝心な記事内容が表示されません。
プラグインの「ktai style」を停止したら表示されるようになりました。いまどきガラケー向けページは必要ないだろうしこれで良かったのだと思います。PHPバージョンを変更したときは、更新停止している古いプラグインは見直した方がいいみたいですね。

■課題(3)プラグイン更新と削除でFTP要求がかかる
「ktai style」を削除しようと思ったところ、FTPの認証要求が出てくるようになりました。ググった結果WORDPRESSフォルダ全体のオーナ/ユーザをApacheに変更すると改善するらしいので実行。
具体的には(WORDPRESS)フォルダの直上で以下を実行
chown -R apache:apache (WORDPRESS設置フォルダ)

課題(1)(2)の件からの結論として、移行元の環境でいらないプラグインとか何年も更新のかかっていないプラグインは、無効化して削除しておけば問題は無かったということですね。

ふー
posted by wani at 11:41 | Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック