閲覧/アクセス不可コンテンツをサーバーから復旧する方法

WordPressを使い出した頃、自分好みの「名前」をインターネット上の住所に出来ることが楽しくて大量のドメインを取得したものの、1年もするとそのほとんどが不要だということに気付きました。

なので、運営サイトの統廃合を行いながらドメインの整理を行っていました。
処理や作業の漏れは無いと思っていたのですが、いざドメインの有効期限が切れてから移行すべきコンテンツが3つほど移行されてなかったことが発覚。

急遽、サーバーに保存されているデータから該当のコンテンツを復旧することとなったため、備忘録を兼ねて復旧手順を公開します。

なお、利用サーバーは「エックスサーバー」です。

ドメインを更新しないと、一体何が起こるのか?

そもそも、ドメインの有効期限が切れるとサイトはどうなるのか?…その答えは、以下の画像を確認して頂ければと思います。

ドメイン有効期限切れサイトへアクセスしたときのスクリーンショット

 

ご覧の通り、サイトにアクセス出来ません。

この状態は、サイトをGoogle等で検索した場合(一般的な「検索」)に限らず、WordPress管理画面にアクセスしても同じです。

つまり、今までアップしてきたコンテンツの閲覧はもちろん、管理画面へのアクセスも出来ないということになります。このような状況下で、必要なコンテンツを復旧するにはどうすれば良いのか?…2つ方法があります。

1つ目はバックアップからの復旧。そして2つ目はサーバーに保存されているデータからの復旧です。
(プロの方は、他にもっと良い方法を知っているかもしれません)

 ※【注記】当然のことながら、サイト自体を再表示するにはドメインの更新が必要となる。

バックアップ未取得なら、最も原始的な復旧方法しか手はない

コンテンツの復旧には2つの方法があるとお伝えしましたが、今回復旧の対象となるのはテストサイト。バックアップは取得していませんでした。

こうなると、サーバーにアクセスして対象データを取得するしか方法はありません。

WordPressの場合、テキストデータは「データベース」に保存されます。対して写真などの画像データは「ファイル」に保存されます。見た目は1ページのコンテンツ(ウェブページ)であっても、復旧時には2か所からデータを取り出す必要があるということ。ここがポイントになります。

まずはデータベースにアクセスし、テキストデータを復旧するところから始めていきます。

データベースには、サーバーの管理画面からアクセス出来ます。エックスサーバーの場合は管理画面(インフォパネル)から「サーバー管理」ボタンをクリックすればOKです(サーバーパネルへ移動する)。

サーバーパネルにアクセスしたら、「MySQLバックアップ」をクリックします。すると下図のように3つのタブが表示されるので、「手動バックアップ」タブをクリックしましょう。

「手動バックアップ」タブをクリックすると、データベースの一覧が表示されます。一覧の中から復旧したいドメインのデータベースを選択し、「エクスポート実行」ボタンをクリックして下さい。

以上でテキスト部分のデータを入手できますが、手順に関して更に詳しく知りたい場合は、以下エックスサーバーのマニュアルを参照して下さい。

作業①:テキストを復元する

それでは、エクスポートしたsqlファイルを開いてみましょう。

私はWindows環境ですが、①メモ帳②ワードパッドの中から開くアプリケーションを選択出来ました。お勧めは、ワードパッドです。その理由は、ルーラーに合わせて自動で折り返しが入るので見やすいから。メモ帳の場合は折り返しが入らず、非常に見づらくなるためお勧めしません。

ワードパッドでファイルを開くと、関数やタグの羅列の中に投稿した文章が見えます。しかも、リビジョン毎に保存されているらしく、同じ文章がいくつも保存されていました。

取り敢えず、関数やタグは一切無視して「復旧したい文章そのもの」だけを探しましょう。

復旧したい文章が見つかったら、WordPressの「投稿」または「固定ページ」にペーストすれば問題解決!…とは残念ながらなりません。

下の画像をご覧下さい。sqlファイル中の文章を移行先のサイトにペーストしたものです。

閉鎖サイトで使っていたエディターはGutenberg。移行先のサイトもGutenbergを使っているので、同じGutenberg同士なら問題ないかと思い、「コードエディター(旧バージョンのテキストエディタ―)」に文章をそのままペーストしてみたのですが…結果はご覧の通り。

タグを残したままエディターにペーストした事例

 

…実に見づらいですよね。問題点は下記の通りです。

問題点

①全く改行されていない。代わりに、「\n」という文字(タグ?)があちこちに散見される。
②フォントサイズを変えたはずの文字がデフォルトのまま(太字は反映される)
③フォントカラーも変更が反映されない

ご覧の通り、テキストの復旧においては改行や装飾等の修正が必須です。
よって、復旧作業時には不要なタグ等を削除する必要があります。

そこで、Microsoft Wordに復旧したい文章をペーストします。
その理由は、不要なタグを一括で削除するためです。※

 ※【注記】メモ帳やワードパッドにも置換機能はありますが、一括処理が出来ません。

Microsoft Wordの「置換(すべて置換)」機能を使って文章の前後に入っている「pタグ」や「brタグ」、そして「\n」を全て取り除きます。それ以外のタグはそのままにしておきましょう。復旧時に、タグに記載されている情報(装飾やリンク先、添付ファイル名など)が必要になるからです。

不要なタグ等を削除したデータを投稿/固定ページにペーストし、見出しや改行、文字の装飾、リンク等を修正します。これでテキストの復旧は完了です。

作業②:投稿画像を復元する

さて、これで何とかテキストデータは復旧することが出来ました。残るはアイキャッチや投稿内に用いた画像の復旧です(動画はアップしていないので復旧方法は不明)。手順は以下の通り。

 投稿画像復旧手順

①投稿内部の情報から、使われていた画像を特定
②画像の保存場所にアクセスして必要な画像をダウンロード
③ダウンロードした画像を移行先にアップロード

まずは、先程抽出した文章そのものを確認しましょう。
「imgタグ」を確認すれば、使われていた画像のファイル名が分かります。

次に、サーバー内の画像ファイル保管場所にアクセスし、必要なファイルをダウンロードしましょう。
エックスサーバーの場合、画像の保管場所はファイルマネージャーからアクセスします。

ファイルマネージャーへアクセスするには、管理画面(インフォパネル)上で「ファイル管理」ボタンをクリックするだけ。これでファイルマネージャーへ移動出来ます。

ファイルマネージャーから復旧対象データが保存されているドメインを選び、public_html→wp-content→uploadsと進みます。すると、下図のようにいくつかのフォルダが出てくるので、フォルダの中を確認しましょう。

これらのフォルダの中に画像が入っていますので、imgタグに記載されていた情報を参考に、必要なファイルを探します。ファイルを見つけたら、クリックすれば自動的にダウンロードされます。

ダウンロードしたファイルを開き、念のために内容を確認後、移行先にアップロードすればOKです。

ドメイン更新とバックアップをお忘れなく

今回は廃止するドメインだったこと。加えて移行対象となるコンテンツはわずか3つだったことから最も原始的な復旧方法でも対処出来ましたが、かなり面倒な作業でした。

しかし、もしこれがアクティブなサイト(ドメイン)であって、コンテンツのボリュームが数十から数百に及ぶようなら…復旧の目途が立たないくらいの深刻な事態に陥るところでした。

まずはバックアップを確実に取得しておくこと。加えて、ドメイン更新漏れが発生しないよう、自動更新にするなり更新通知が来たら即更新するなどの自衛策が必要です。

ウェブサイトは、私たちにとって大切な資産です。
トラブルが発生しても迅速に復旧出来る様、出来る限りの備えをしておきましょう。

この記事が気に入ったら
フォローしよう

最新情報をお届けします

Twitterでフォローしよう