タグ

2009年10月7日のブックマーク (3件)

  • Kazuho@Cybozu Labs: Apache で X-Reproxy-URL ヘッダを使えるようにするモジュール mod_reproxy を書いた

    ウェブアプリケーションにおいて、認証がかかっている画像や大きなファイルを配信する場合には、Perlbal 等でサポートされている X-Reproxy-URL ヘッダが有効なことが知られていて、その理由としては、 (メモリを大いする) アプリケーションサーバのプロセスを転送終了まで占有しない HTTP ベースの分散ファイルシステムとリバースプロキシが直接交信するので、ネットワーク負荷が低い といった点が挙げられます。「でも、Apache は X-Reproxy-URL ヘッダをサポートしてないんだよねー」という話が、先日の YAPC::Asia 2009 においても話題になっていました[要出典]。回避策としては、ワンタイムURLのような手法もあるのですが、セキュリティな懸念もあります。 なんとかしたいなと思っていたのですが、気が向いたので、Apache に X-Reproxy-URL ヘッ

  • lighttpd の X-Sendfile を使えるApacheモジュール - spiritlooseのはてなダイアリー

    http://celebnamer.celebworld.ws/stuff/mod_xsendfile/ mod_xsendfile っていう名前でリリースされている。 早速使ってみたけど、動作は問題ないみたい。 XSendFileAllowAbove ディレクティブを有効にしておけば、どのディレクトリのファイルも返せる。 ファイルが読み込めなかったり、存在しなかったりすると404が返る。 これは結構つかえるなぁ。 あとは Parlbal の X-Reproxy-File X-REPROXY-URL がほしいなぁ。 このモジュールは Apache2 の output filter を利用しているので、同じように実装するのであれば X-Sendfile ヘッダのパスを apr_file_open しているところを、もう一度リクエストを投げる形に変えればすぐ作れるはず。 時間があるときに実装し

    lighttpd の X-Sendfile を使えるApacheモジュール - spiritlooseのはてなダイアリー
  • [メモ] AmazonS3とEC2を使う時にはX-REPROXY-URL

    S3+EC2を使っていると、S3に保存したムービーや画像と言った大きなデータを、クライアントに返したい場合があります。 そのときにリバースプロキシを使う方法もあるけど、権限やユーザによって振り分けたい場合などは、単純なリバースプロキシではうまくいきません。 Rails側でNet::HTTPなどを使ってS3からデータを取ってくる方法もあるのですが、それだとパフォーマンスが悪すぎです。 負荷分散することを考えると、これはApacheモジュールか、リバースプロキシ側でやって欲しい作業です。自分で書こうと思ったけど、調べてみたらやっぱり同じようなのがありました。 リバースプロキシなどの中には、X-REPROXY-URLというヘッダをサポートしているものがあり、これを戻すとリバースプロキシが代わりにこのURLにアクセスしてデータを返してくれます。 Perlbalが始めにサポートしたらしいですが、li