私はマーケティングチームの開発者です。多くの場合、要求される機能の1つは次のとおりです。Xサイトの内容(またはXページの内容)をXに戻すことができますか?時間の経過とともにスナップショットのWebサイト
このリクエストを解決する良い解決策はありますか?
私はマーケティングチームの開発者です。多くの場合、要求される機能の1つは次のとおりです。Xサイトの内容(またはXページの内容)をXに戻すことができますか?時間の経過とともにスナップショットのWebサイト
このリクエストを解決する良い解決策はありますか?
WayBackMachineが役に立ちます。
がway back machineを見て、それは完璧ではないのですが、私は:)
に働いたことはまだそこにはいくつかのembarrasing古いサイトがありますがarchive.orgでウェイバックマシンで見たことがありますか?
http://www.archive.org/web/web.php
それはあなたのニーズを満たしていない場合は、多分あなたは、特定の日付のバージョンを引くことができ、あなたのソース管理リポジトリに何かを自動化することができます。
ソースコントロールは、自宅であなたのリクエストを解決できる必要があります。適切にラベル付けし、そのラベルを展開するための内部サーバーを用意してください。問題はありません。自動展開ツールを使用していて、賢明にラベルを選択する場合は、ユーザーがラベルを入力するだけで、ラベルXでソースをチェックアウトして配備するアプリを作成するのは比較的簡単です。あなたのラベルが日付のようなものなら、正しいフォーマットで日付を入力して、展開のために5分間待たなければなりません。
あなたのページや正確に何を求めているかによって、ページのコピーをソース管理に入れることを検討することもできます。
コンテンツがデータベースにある場合でも、時間が経つにつれて変更されるHTMLページだけの場合は、SCMがこれを行う通常の方法になります。誰もが言及しているWayBackMachineはすばらしいですが、このソリューションは企業固有のものであり、時間の経過に伴う変化のニュアンスを捉えることができます。あなたは私の知る限り、WayBackMachineを制御することはできません。
Subversionでは、フックを設定して自動化することができます。実際には、これはデータベースのコンテンツを使用している場合にも機能します。
他の人が提案したのと同様に(動的なWebサイトを想定して)、出力キャッシュを使用してWebページのコードを生成し、 Subversionを使用して変更を追跡します。
WayBackマシンを使用することは、このシステムを設定する前に個人がウェブページを表示するよう求めた場合など、おそらく最後の手段です。 WayBack Machineには、必要なものすべてを含めることができません。
私の提案は、毎晩wgetをサイト上で実行し、それをarchive.yourdomain.com
に保存することです。現在のページのURLを日付ピッカーに渡す適切なアクセス許可を持つユーザーのために、各ページにコントロールを追加します。日付を選択したら、archive.yourdomain.com/YYYYMMDD/original_url
をロードします。
ユーザーがarchive.yourdomain.com
のリンクを壊さずにサイト全体を閲覧できるようにするには、サイトのアーカイブコピーをいくつかのリポジトリからルートのarchive.yourdomain.com
に書き直すかコピーする必要があります。ディスク容量を節約するには、これが最善の選択肢かもしれません。 wget
コピーをzip形式で保存し、ユーザーが要求した日付を抽出します。これにはいくつかの問題があります。たとえば、複数のアーカイブされたページを異なる日付から同時に表示したい場合など、どのように対処しますか?
あなたのサイトに毎晩wget
を実行することは、WWW訪問者に表示されたページを取得し、動的に提供されるコンテンツ、エラー、省略、ランダムで完了するため、ソース管理から取得する方が優れているあなたはwget
の出力をソース管理に保存することができますが、ソース管理の外のファイルシステム上でそれを圧縮することを買うのはわかりません。また、この計画では、任意のサイズのWebサイトを想定して、大量のディスク領域を使い切ることに注意してください。
Grantによれば、スペース節約のためにwgetとリビジョン管理を組み合わせることができます。私は実際にインターネットアーカイブやWebCiteを無期限に信頼していないので、通常の閲覧のためにこれを行うためのスクリプトを作成しようとしています(検索できません)。
スクリプトは次のようになります。cd to directory;正しいwget --mirror
コマンドなどを起動してください。 darcs add $(find .)
を実行して新しいファイルをリポジトリにチェックインします。 darcs record --all
。
変更されたファイルは、更新されたバージョンで上書きする必要があります。 darcs addは新しいファイル/ディレクトリを記録します。 darcsレコードは変更を保存します。
DVCSs履歴を保存しないため、実際の変更がありますしない限り、あなたは無限に多くの重複コピーを格納しない日付X.
までの日付Xのようにビューを取得するには、あなたは、単にあなたのレポからすべてのパッチを引くにはコンテンツをファイルに保存するCSSやJSや以前にダウンロードしたイメージを必要としなくなるようにページを変更するという意味で「ゴミ」を得るでしょうが、定期的にすべてを削除してパッチとして記録し、次のwget呼び出しはウェブページの最新バージョンに必要です。 (そして、今でもフルテキスト検索ができます。ディスク上のファイルではなく、履歴を検索するだけです)
(大きいメディアファイルがダウンロードされている場合は、rm $(find . -size +2M)
のように投げて削除できます彼らが得る前にdarcs add
エド。)
編集:私は明示的なバージョン管理で迷惑を掛けないで、wgetを作成して複製を作成させ、時々fdupes
で除外します。 http://www.gwern.net/Archiving%20URLs