サイト全体に問題が発生してしまった場合に、プラグインを使わずにFTPソフトとphpMyAdminを使ってWordpressを手動で復元する方法です。
Wordpress本体をインストールし直すクリーンインストール方法も記述。
ハッカーからの攻撃などでサイトに問題が発生してしまった場合、Wordpressのコアファイルを一新することで元通りになる場合もあります。
この記事ではバックアップファイルがある前提で話を進めていきます。
「plugins」「themes」「uploads」の3ファイル、及び拡張子が.sqlのデータベースファイルを既にバックアップとして保存している状態を想定しています。
これらのバックアップファイルの取り方は別の記事にまとめています。
バックアップなんか取ってないから持っていない!
という方はレンタルサーバーのサービスを確認してみてください。
数週間程度前のバックアップなら自動で取ってくれているホスティング会社も増えてきましたので助かるかもしれません。
この記事の目次
WordPressの復元とクリーンインストール
Wordpressをバックアップから復元する方法は至ってシンプルです。
問題が発生していない状態時のファイルで既存のファイルを上書きするだけでOK!
普通にWordpressを使っている場合、自サイトにしか存在しないオリジナルデータは意外と少ないです。
インストールしたプラグインを保存してある「plugins」フォルダ。
テーマを保存してある「themes」フォルダ。
画像や動画などを保存してある「uploads」フォルダ。
そして記事内容やログイン情報などを保存してあるデータベース1つだけです。
こちらを上書きすればバックアップファイルから復元できるということです。
参考
復元前にもバックアップを取っておきましょう。
万が一失敗した際に戻れなくなるため泥沼化します。
WordPressファイルの復元
まずはWordpress内に保存されているプラグイン、テーマ、メディアをバックアップから復元します。
FTPソフトなどでサーバーにアクセスし、public_html内のwp-contentフォルダにバックアップ時の「plugins」「themes」「uploads」をアップロードします。
どこまでバックアップを取っているかにもよりますが、wp-contentを丸ごとアップロード。もしくはpublic_htmlの中身を全部アップロードしてもOKです。
これでFTPソフトでの復元は完了です。
プラグインやテーマ、画像が復元できたので続いてデータベースを復元しましょう。
データベースの復元_phpMyAdmin
「データベース名.sql」という感じの名前になっているデータベースのバックアップをphpMyAdminでデータベースにインポートします。
レンタルサーバー会社の管理画面などからphpMyAdminにログインします。
cPanelからも簡単にログインすることが出来ます。
ログイン出来たらバックアップをインポートするデータベースを選択します。
(バックアップを取った際に選択したWordpressで使用しているデータベース)
データベースを選択したら、画面上部の「インポート」を押します。
ファイルを選択を押し、バックアップ時にダウンロードした「○○.sql」のようなデータベースファイルを選択。
画面下部の実行をクリック。
「インポートは正常終了しました。」の旨のテロップが出ればOK!
これでデータベースの復元は完了です。
Wordpress内のファイルとデータベースをバックアップから復元すれば、問題発生前の状態に戻っているはずです。
バックアップを取っていれば簡単にサイトを復元することが出来ますが、バックアップがない場合は地獄を見ます…
WordPressをクリーンインストールする方法
最後にWorpdressのコアファイルを一新する方法。
ハッキングを食らった可能性が確認できた場合、コアファイルにバックドアが仕掛けられている可能性がありますのでWordpressをインストールし直す方が良いです。
ワードプレスを使っていると稀に謎のファイルが生成されていることがあります。
インストールしたプラグインが生成したものなら問題ないのですが、数字の羅列のようなファイルはかなり怪しいです。
筆者は以前サーバーのルートに
「2f6770d81ed2ba6560df153fbce7dc0c8a5043f14161f0231e7a3001b1def2e6」
という名前の怪しいphpファイルがありました。
このような場合ワードプレス本体をクリーンインストールするのが望ましいです。
WordPressをアップロードし直す
クリーンインストールする方法は何通りかありますが、シンプルで分かりやすいのが公式ページからWordpress本体をダウンロードし、必要なファイルを入れた後で丸々サーバーにアップロードしてしまう方法です。
外部リンク
【Wordpress公式ページ】
ダウンロード | WordPress.org 日本語
まず公式サイトから新鮮なワードプレス本体をダウンロードしましょう。
続いて本体を解凍し、先ほどの復元方法と同じくwp-contentフォルダ内にバックアップ時の「plugins」「themes」「uploads」を保存します。
そしてwp-config.phpをWordpress本体の直下に保存します。
これが無いとログイン画面にアクセスした際に、データベース接続エラーが出ます。
wp-config.phpの20~30行目付近にデータベースの情報が記載されています。
この内容が間違っているとデーターベース接続エラーが発生してしまいます。
後はサーバー上のpublic_htmlなどの公開フォルダに一式をアップロードして上書きすればコアファイルが一新されます。
管理画面からWPを再インストールする
Wordpressのダッシュボード > 更新 から再インストールをすることもできます。
ただしこの方法だと既存のファイルは上書きされないようで、問題があるコアファイルを消し去れるかというと疑問が残ります。
メモ
ファイルの更新日時を確認してみてもほとんどのファイルの更新日時が変更されていませんでした。
まとめ
Wordpressをバックアップから手動で復元する方法でした。
必要なファイルとデータベースを上書きするだけなので、慣れてしまえば簡単です。
簡単ですがあくまでもこれはバックアップファイルを取っていた場合。
ない場合はレンタルサーバーの自動バックアップを漁ってみるくらいしか...
いつ攻撃されてサイトがおかしくなるかなんて予想できないので、ある程度サイトに時間をかけたら定期的にバックアップを取っておくのが良いですね・w・
更新せずに放置している場合も定期的にバックアップは取りましょう。
バックアップ=死んだときのセーブポイントである。