nDiki : mod_proxy
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日追加)
- 25:45 Apache Proxy で アンテナの ?%MM%%DD%%... (2001-10-02)
- Apache でミラー proxy (2002-04-17)
- Web広告に興味を持つ (2000-10-01)
- Debian に RSS リーダ「フレッシュリーダー」をインストール (2006-03-06)
- FoxyProxy と autossh で社内 Web ページを閲覧 (2006-06-03)
2002年4月17日 (水)
■ Apache でミラー proxy

「会社のサイトにあるデモをノート PC に載せて、オフラインで使いたい」という事で、Windows XP な ノート PC に Apache をインストール。
Internet Explorer からは http://会社のサーバ名/ でアクセスできるようにしなければならないので*1 Apache の proxy を使う事にする。 mod_proxy と mod_rewrite を(この順番で)有効にして
ProxyRequests On NoCache * <IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^proxy:http://会社のサーバ名/(.*)$ http://127.0.0.1/会社のサーバ名/$1 [P] </IfModule>
としておく。 '<DocumentRoot>/会社のサーバ名' ディレクトリ以下に公開サーバの内容をコピー。 これで、Internet Explorer の proxy を 127.0.0.1:80 にすれば、会社のサーバへの URL はローカル Apache がミラーコンテンツを返してくれる。
ただ、オフライン時に Internet Explorer が直接 DNS をひきにいこうとして proxy に行く前に名前解決失敗してエラーにしてしまったり、途中未接続の旨のダイアログが出たりすると一筋縄では行かなかったり。
自分の開発用 Windows 2000 BOX だと不具合が多かったけど頼まれた XP のノート PC は、あまりいじってないせいか割に素直に動いた。
*1そうしないとデモが動かない
- Apache Proxy で アンテナの ?%MM%%DD%%HH%%TT... (2001-10-02)
- Squid-2.1.RELEASE-src.tar.gz へ更新 (1999-01-20)
- Windows 上での Apache 2.0.53 では PATH_INF... (2005-04-10)
- DHCP で IP アドレスを割り当てられているノート PC に Wind... (2006-03-08)
- Hyper Estraier で社内 Web コンテンツ検索 (2006-06-01)
Related web page
前回のエントリ 'リバース・プロキシ導入の準備知識' で紹介したリバース・プロキシを実際に導入する方法を紹介します。 リバース・プロキシを構築する方法はいくつかありますが、本エントリではその代表的な方...http://www.movabletype.jp/developers/naoya/archives/2004/10/apache_20_mod_p.html
■よく検索されるキーワード
torrent(173) expressions(80) 竹内まりや(58) x31(25) ドラマ(23) linux(23) 手帳(21) 壁紙(21) perl(21) windows(20) 動画(19) wiki(17) porter(17) debian(16) 使い方(16) 画像(15) thinkpad(15) 作り方(15) gmail(14) usb(14) 秋葉原(13) ヨドバシ(13) ほぼ日手帳(13) 提案書(12) 活用(12) 竹内(12) 古川小百合(12) 修理(12) ノート(11) 無印(11) ヨドバシカメラ(11) nikon(11) 書き方(10) ダイソー(10) 万年筆(10) 生年月日(10) 大井町(10) ミニ6穴(9) ほぼ日(9) tc-1(9) 冷蔵庫(9) 設定(9) ニコン(9) java(9) mp3(8) 故障(8) 方眼(8) xp(8) 日誌(8) 感想(8) カメラ(8) allinanchor:*.torrent(8) バッグ(8) firefox(7) インストール(7) キーボード(7) mixi(7) 無料(7) リフィル(7) 小林麻耶(7) nikkor(7) ジョイントラック(7) madwifi(7) 原田夏希(7) skype(6) 変更(6) 三条まゆみ(6) ペンケース(6) web(6) emacs(6) home(6) ポーター(6) 2009(6) itunes(6) a6(6) 無印良品(6) デジカメ(6) finepix(6) 無線lan(6) 評判(6)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 方法 設定 サンプル ダウンロード セール 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 最新 MP3 動画 Torrent 解説 意味 用語集 参考文献 お薦め お勧め おすすめ 便利 Blog ブログ mixi 待受画面 修理Process Time: 4.288451s / load averages: 1.35, 1.57, 1.46
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク