dh memoranda

徒然なるままに日暮らしブログに向かいて...

dolipo, a wrapper of polipo

drikindolipo というツールを公開しました。すでに話題になっているようですが、なかなか素敵なので紹介します。

dolipo は polipo という local web cache ツールの MacOS X 用の GUI wrapper。でも、彼の作品らしく単なる wrapper ではなく、ネットワークの変更を検知して polipo を再起動してくれたりして、polipo の存在をほとんど意識しないで使えるようなるスグレモノです。

local web cache としての polipo はなかなか優秀で、ブラウザでのウェブ閲覧の体感速度が結構よくなります。ブラウザとサーバの間の通信をいろいろ最適化して、体感速度をあげてくれます。実際に回線が太くなるわけではないのですが、体感速度はとても大切ですから、ね。polipo の話を聞いたときは、launchd で起動するようにすればいいかな、とか思ったりしたのですが、ネットワークがきりかわったときとかリスタートが必要で意外と面倒です。そのあたり、dolipo が面倒みてくれたりするのでとても便利。ログイン時に起動するようにしておくだけで基本オッケー。見つけてきて GUI をつけただけでなく、さらにネットワークの状態検出や設定など、簡単に、かつより便利にしてくれた drikin に感謝です。

で、dolipo を紹介する drikin のページには locahost:8123 の設定をする方法が紹介されているのですが、わたしはヨンドコロのない事情で proxy を切り替えたりするので、そのために proxy.pac を作って設定してみました。とりあえず書いた proxy.pac はこんな感じ。

function FindProxyForURL(url, host) {
    return "PROXY 127.0.0.1:8123; direct";
}

(参考: Proxy Client Autoconfig File Format)

これをファイルにして設定すれば、dolipo (polipo) が起動しているときは local proxy を、起動していないとは、proxy なしでの接続になります。polipo がささっていたりするとダメですが、起動しているかどうかを気にしないでいいのでうれしいかも。さらに細かく制御したい人は、proxy.pac の書き方を工夫するといいと思います。はい。