nDiki : ProxyRemote
スポンサード リンク
Related term
2001年10月2日 (火)
■ Apache Proxy で アンテナの ?%MM%%DD%%HH%%TT% 除去

アンテナページの多くはリンクURLに更新日時を付加する。 例えば
http://www.naney.org/personal/diary/hns/
が、10月02日 14:46 に最終更新されているとう情報を取得すると
http://www.naney.org/personal/diary/hns/?10021446
という、URL を持つリンクをアンテナページに生成する。 ページが更新されるとURLも変化するので、(Mozilla, Internet Explorer 等の)以前にアクセスした事のあるリンクの色を変えるブラウザでは、更新されたことを確認しやすい。
が、これはキャッシュ proxy には仇になる。 更新されるたびにURLが変化するということは、そのURLごとにキャッシュが作られるということだ。 私の愛用の WWWOFFLE もご多分にもれずそうである。 私は3ヶ月間キャッシュを保持するようにしているから、一日に3度更新されるページをアンテナのリンク経由で見ると、約90のコピーがキャッシュされる事になる。 そして、最新以外のキャッシュは(通常)2度と利用されることもない。 もはや、その URL ではアクセスされないから。
これはもったいない。 ようは、アンテナ経由でのアクセスの ? 以下を削除してキャッシュすればいいのだが、WWWOFFLE にはあいにくそのような機能はない。 そこで、URL を書きかえる proxy をブラウザと WWWOFFLE の間にカマせようということになる。
Mozilla -> rewrite proxy -> WWWOFFLE -> target site
ここでは、Apache を rewrite proxy にすることにしてみた。 Apache は mod_proxy で proxy になるし、mod_rewrite で URL を柔軟に変更できる。 もともと、自分の Web サイトのチェック用にローカルマシンで Apache も常時起動しているので設定を変更するだけだ。
とりあえず、大抵のアンテナは ?と8桁の数字(「なつみかん」でいうところの?%MM%%DD%%HH%%TT%)を付加するので、これをもぎとればよい。 以下、httpd.conf の修正。
LoadModule proxy_module /usr/lib/apache/1.3/libproxy.so LoadModule rewrite_module /usr/lib/apache/1.3/mod_rewrite.so
とモジュールをそれぞれ有効にする。rewrite_module より proxy_module を先に Load するようにする(デフォルトでは逆順なので注意)。
そして、httpd.conf の最後に
ProxyRequests On ProxyRemote * http://127.0.0.1:8080/ NoCache * <IfModule mod_rewrite.c> RewriteEngine on #RewriteLog /tmp/rewrite_log #RewriteLogLevel 9 RewriteRule ^proxy:(.*)\?[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$ $1? [L] </IfModule>
を追加。ProxyRemote で、WWWOFFLE の proxy を指定。 RewriteLog, RewriteLogLevel はうまく書き替らない時に有効にしてログを確認するのに使う。 最後の RewriteRule で実際に書き替えを行う。 ポイントは $1? と、置換後の文字列指定で最後に ? をつけること。 これをつけないと query-string が削除されない(これに気がつくのに随分かかった)。
後はブラウザ側の http プロキシ先を 127.0.0.1:80 にすれば OK。
無条件に ?と8桁数字が末尾にくれば、取り除いてしまうので荒っぽい RewriteRule だ。 だが上記のような query string を使っているページは(多分)そうないから、とりあえず、これで良しとしよう。 困ったら直せばいい。
@ 追加リンク
- いやな日記:URL末尾の ?01234567 のような文字列を除去する
- (2004年3月16日追加)
- Apache でミラー proxy (2002-04-17)
- 25:45 Apache Proxy で アンテナの ?%MM%%DD%%... (2001-10-02)
- Web広告に興味を持つ (2000-10-01)
- Debian に RSS リーダ「フレッシュリーダー」をインストール (2006-03-06)
- Hyper Estraier で社内 Web コンテンツ検索 (2006-06-01)
■よく検索されるキーワード
提案書(75) torrent(69) perl(61) 書き方(45) 充電式カイロ(43) windows(38) x31(36) 使い方(32) linux(32) cvs(25) アジェンダとは(25) usb(25) thinkpad(23) 静電気(21) サンプル(20) 口コミ(20) ヨドバシ(20) アジェンダ(20) 画像(19) debian(19) ubuntu(19) mp980(18) f-01a(18) 手帳(17) tc-1(17) 秋葉原(16) ssh(16) subversion(16) グッズ(16) a6(15) 壁紙(15) ほぼ日手帳(15) c#(14) ダイソー(14) svn(14) 交換(14) インストール(13) 加湿器(13) firefox(12) ノート(12) 無印(12) 日本語(12) wiki(12) ganttproject(12) デロンギ(11) 方眼(11) ヨドバシカメラ(11) デザイン(11) nikkor(11) 設定(11) 作り方(11) dropbox(11) af(10) terastation(10) memcached(10) レビュー(10) カバー(10) カイロ(10) 2009(10) 除去(10) nikon(10) tortoisesvn(10) クラリチン(9) ガントチャート(9) 動画(9) ポメラ(9) ご査収(9) rcs(9) モジュール(9) n-01a(9) フィルム(9) 写真(9) システム手帳(9) edition(9) porter(9) xp(8) imap(8) 4c(8) docomo(8) ミニ6穴(8)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザインProcess Time: 15.202971s / load averages: 1.30, 0.66, 0.49
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク