0

適切な出発点として使用できるオープン ソースの HTTP キャッシング プロキシはありますか?

次の目的を達成するために、個人用の HTTP キャッシング プロキシを作成します。

  1. リモート サイトの速度が遅くても、コンテンツを即座に提供する
  2. ネットワークがダウンしていてもコンテンツを提供する
  3. 必要に応じて古いコンテンツを読むことを許可する

なぜ私はこれをしたいのですか?

  1. 私の地域のインターネット接続の速度は、決して素晴らしいものではありません。
  2. HTTP ヘッダーでコンテンツをキャッシュしないように指示されていても、コンテンツをキャッシュしたい
  3. 過去に読んだコンテンツにすばやくアクセスできなかったときは、本当に好きではありません。
  4. ウェブサイトが有用なコンテンツを削除し、元に戻す方法が見つからない場合、私は無力感を覚えます

プロジェクトの構成要素

  1. ローカル ネットワーク (またはおそらく localhost) で実行されているプロキシ、および
  2. コンテンツの更新通知を表示するブラウザ プラグインまたはデスクトップ プログラム

プロキシの特別な点は何ですか?

  1. ブラウザが HTTP リクエストを開始する
  2. コンテンツが既にキャッシュにある場合、プロキシは最初にコンテンツを提供します。
  3. 次に、プロキシはリモート Web サイトに接続し、コンテンツが更新されているかどうかを確認します。
  4. コンテンツが更新された場合は、デスクトップ/ブラウザーに通知を送信し (小さなポップアップを表示したり、プラグイン アイコンの色を変更するなど)、バックグラウンドでコンテンツをダウンロードします。
  5. プロキシが新しいコンテンツをダウンロードするたびに、キャッシュに保存します
  6. 更新されたコンテンツをロードするかどうかを選択させてください (ロードしない場合は、新しいコンテンツのダウンロードを停止します。ロードする場合は、新しいコンテンツを私にストリーミングします)
  7. 特定の Web サイトから新しいコンテンツを常にロードする/ロードしないようにルールを割り当てさせてください
  8. プロキシが (1) 特定の Web サイトから常に新しいコンテンツを読み込みたい、または (2) Web サイトのコンテンツが頻繁に更新されることを検出した場合に、ルールを自動的に設定します。

ノート:

  1. プロキシに物理的にアクセスできるのは私だけであり、プロキシは (ローカル ネットワークから) 私だけにサービスを提供しているため、すべてをキャッシュしてもセキュリティ上の問題は発生しません。
  2. これは技術的に実現可能だと思います(アーキテクチャ上の問題があれば教えてください)
  3. 古いバージョンの Web ページを保持するかどうかはまだ決めていません。しかし、私の毎日の帯域幅の使用量がわずか 1 ~ 2 GB であることを考えると、安価な 1 TB のハード ドライブで 2 年間のデータを簡単に保持できます。

私の計画は理にかなっていますか?提案/異議/推奨事項はありますか?

4

1 に答える 1

3

polipo を見てみましょう: http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/

ソースはこちら: https://github.com/jech/polipo

これは、C で実装されたキャッシング Web プロキシです。間違いなく役立つはずです。

于 2012-07-19T10:16:14.563 に答える