せっかく書いた記事が失われた事ってありませんか??
WordPressでリビジョン機能を有効にしていると復元しやすいのですが、
その反面データベースが肥大化して重くなるというネックがあります。
なので私のサイトではWordPressのリビジョン機能は無効にしているのですが、
とうとうやっちまいました…
折角書いた記事がパーになってしまいました。
育児の合間中、記事を書き足し書き足しで書いているので、
前のページに戻ったのを気付かずに書き足して保存してしまったんですね。。
そうなると、保存した時点に戻ってしまって、
書き足した部分丸ごとパーになってしまいました…orz
もう一回書く気力がない…
そう言えばGoogle Chromeのキャッシュ機能を利用すれば、
もしかしたらもしかするかも…と色々調べて、
見事復活させることができました…
もう一回書き足した方が早かったかもしれないと思ったのは秘密だ。
キャッシュデータのチェック
まずはGoogle Chromeに保存されているキャッシュデータのチェックをします。
Google Chromeのアドレスバーにchrome://cache/
を入力して、キャッシュの一覧を表示させます。
この時目的のキャッシュデータを如何に探すかがコツです。
欲しいキャッシュされているデータを探す為に、
下記の方法で試してみてください。
いずれもサイトURLと記事IDが鍵となってきます。
私の場合は、
下書きした記事をプレビューして確認していたので、
それが一番確実だろうと思い、
公開前の下書きしてプレビュー記事のURLで探しました。
公開前の下書きしてプレビュー記事のURLを探す方法
[php]http://ドメイン.com/?p=【記事ID】&preview=true[/php]公開後に公開した記事URLを探す方法
[php]http://ドメイン.com/記事URL[/php]管理画面で編集した記事URLを探す方法
[php]http://ドメイン.com/wp-admin/post.php?post=【記事ID】&action=edit[/php]目的のキャッシュデータのURLをクリックすると下記の画像になります。
HTTPレスポンスヘッダー
上部分のHTTPレスポンスヘッダーで下記をチェックする。
コンテンツタイプがtext/html
になっていることと、
エンコーディングがgzip
になっていることを確認します。
Content-Type: text/html; charset=UTF-8
と
Content-Encoding: gzip
HTTPレスポンスヘッダの例
[php]HTTP/1.1 200 OKServer: nginx
Date: Thu, 10 Dec 2015 00:29:02 GMT
Content-Type: text/html; charset=UTF-8
Vary: Accept-Encoding
Expires: Wed, 11 Jan 1984 05:00:00 GMT
Cache-Control: no-cache, must-revalidate, max-age=0
Pragma: no-cache
Content-Encoding: gzip[/php]
HTTPレスポンスヘッダのバイナリ例
[php]00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 H…….q…….00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 pX……….HTTP
00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /1.1 200 OK.Serv
00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 er: nginx.Date:
00000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Thu, 10 Dec 2015
00000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:29:02 GMT.Co
00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ntent-Type: text
00000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 /html; charset=U
00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 TF-8.Vary: Accep
00000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 t-Encoding.Expir
000000a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 es: Wed, 11 Jan
000000b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1984 05:00:00 GM
000000c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 T.Cache-Control:
000000d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 no-cache, must-
000000e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 revalidate, max-
000000f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 age=0.Pragma: no
00000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -cache.Content-E
00000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ncoding: gzip…
00000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .4…J….l…t.
00000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ….00.00.000.00
00000140: 00 00 00 00 00 00 00 00 00 00 00 00 1…P…….[/php]
HTTPレスポンスボディのバイナリ例
[php]00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ………..}kw.G00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..g.V.CGYAvb.e[.
00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …03.7..$.3..$.
00000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .%…I.t.0.a-[..
00000040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3@…..@.@0$$…
00000050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …..l../..wU.K-
00000060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [6..Y……..k.~
00000070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 VW….[…….M.
00000080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3……G*…p`..
00000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …..?E……..9
000000a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …G…..qY…nN
000000b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ….&S5.J@.h%S)A[/php]
目的のデータを抽出する
httpのレスポンスボディの部分のみ全選択してSublime Textにコピペします。
ペーストしたデータのうち、00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00の部分のみ矩形選択して、0xEDに貼り付ける。
※Sublime Textで矩形選択する場合はoption + マウスかトラックパットで選択範囲を指定します。
長い場合はいくつかに分けた方が無難です(^_^;)
→0xEDのダウンロードページ
行番号のチェック
chromeのキャッシュページのコピペ元の左側の数値を、
一番上と一番下くらいはチェックする。
※これが合わないと正しく復元できないようです。
0xEDに貼り付けたデータを、
拡張子を.gz
にして名前をつけて保存します。
更に保存した拡張子.gz
のファイルを解凍し、
解凍したファイルを.html
に名前を変更して表示してみます。
ページが見事復活ヽ(=´▽`=)ノ
HTMLソースを抽出してWordPressの投稿画面に貼り付けて復活です。
WordPressのリビジョン機能を活用する
参考までにWordPressのリビジョン機能を活用する方法も記載しておきます。
WordPressをインストールした直下にある、
wp-config.php
で設定します。
リビジョン機能を有効にする方法
[php]define(‘WP_POST_REVISIONS’, true);[/php]リビジョン機能を無効にする方法
[php]define(‘WP_POST_REVISIONS’, false);[/php]リビジョン機能に回数制限を設定する方法
[php]define(‘WP_POST_REVISIONS’, 5);[/php]リビジョンをコントロールするプラグイン
Revision Control
リビジョンを削除するプラグイン
Better Delete Revision
参考サイト
MacのChromeでキャッシュからファイルを復元するには
削除してしまったはてなブログの記事をMac OS XのChromeのキャッシュからhtmlとして復元する方法
コメント