タグ

Apacheに関するsendのブックマーク (84)

  • 複数のテストサーバをリバースプロキシで集約 (3) - daily dayflower

    複数のテストサーバをリバースプロキシで集約 (1) - daily dayflower と 複数のテストサーバをリバースプロキシで集約 (2) - daily dayflower の続きです。 mod_rewrite の RewriteMap を使ってごにょごにょしましたが,なんともまどろっこしかったです。そもそも URI の書き換えに癖のある DSL を使う mod_rewrite を使わなきゃいけないということ自体がアレです。もっと手になじんだプログラミング言語で書ければロジックもすっきりするのに! というわけでモジュールを書いてみました(mod_proxy_mapper.c - daily dayflower)。 プロキシ専用ですが,サブリクエストを使ってプロキシ先を選定するモジュールです。 サブリクエストを使っているので,Apache でサポートしている言語ハンドラ……CGI*1

    複数のテストサーバをリバースプロキシで集約 (3) - daily dayflower
    send
    send 2008/11/18
  • Apacheのmod_proxy_balancerを使うときはretryを設定すべき - 射撃しつつ前転

    今作っているサービスは、Apacheのmod_proxy_balancerを使ってロードバランシングしている。しかし、バックエンドのサービスサーバを一旦落としてから復帰させると、コネクションがしばらくつながらないという問題に悩んでいた。1分ぐらい放置するとつながるようになるんだけど、1分は結構長い。 よくわからないのでソースを読んでみたところ、mod_proxy_balancer.cを眺めた感じ、ap_proxy_retry_workerという関数がコネクションの再確立をしているのではないかと思えた。しかし、関数の定義を眺めてみると、現在時刻がエラー発生時刻とworker->retryを足した数字よりも大きければworkerのstatusからPROXY_WORKER_IN_ERRORのビットを下ろしているだけで、コネクションの確立がどうのこうのなんて関数はまったく呼ばれてない。ここでなにが

    Apacheのmod_proxy_balancerを使うときはretryを設定すべき - 射撃しつつ前転
    send
    send 2008/09/20
  • [補足記事]Apache 2.0 の hook 一覧(apache module 開発事初め その3-3) : DSAS開発者の部屋

    先日この記事において hook の呼び出しに関してコメントを頂きました. 実際のところよく分かってない部分もあったので,hook に関してまとめてみました. このページの記述について このページの内容に関して 英語の文章は,全て Apache 2.0.58 のソースコード中から集めてきた原文ママです. 全ての hook に関して調べ尽くした訳じゃないので間違いもあると思います.間違いに気づかれた方はコメントで指摘いただければ幸いです m(_ _)m hook の呼び出し順序に関して hook が呼び出される順序は,「設定初期化」「プロセス初期化」「コネクション」「リクエスト」に関しては記述した順序で呼び出されるようです. RUN_ALL,RUN_FIRST について RUN_FIRST の hook は,呼び出した hook 処理関数が OK や DECLINE エラーを返した場合,その次

    [補足記事]Apache 2.0 の hook 一覧(apache module 開発事初め その3-3) : DSAS開発者の部屋
    send
    send 2007/08/21
  • PHP の apache_setenv と virtual を利用して,ファイルへの直リンクを防止する

    PHP の apache_setenv と virtual を利用して,ファイルへの直リンクを防止する 2007-05-30-1: [PHP] ファイルへの直リンクを防止する方法としては,例えば Referer ヘッダ参照する方法とかがあると思います. Apache クックブック のレシピ 6.5 に載っているのもその方法ですが,Referer ヘッダを送信しないクライアントはどうするかという問題があります. そこで,PHP の apache_setenv と virtual を利用する方法を紹介します. - apache_setenv Apache サブプロセスの環境変数を設定する http://php.net/apache-setenv - virtual Apache サブリクエストを実行する http://php.net/virtual ダウンロードするファイルがあるディレクトリを

    send
    send 2007/05/30
    なるほど
  • Flex Module for Apache and IIS - Adobe Labs

    Thank you for participating in the Flash Player beta program. As Flash Player approaches its scheduled end of life, we are transitioning beta customers to the secure release build of Flash Player. No action is required on your part, the update process is automatic. For customers that would like to remove Flash Player from their systems, please see our easy to follow instructions for uninstalling o

    send
    send 2007/04/06
  • なぜ apache module を更新すると Segmentation fault するのか : DSAS開発者の部屋

    今回は、apache module について気になることがあったので紹介します。 先日 バージョンアップするために apache module を更新した直後 apache が Segmentation fault してしまうという問題に気が付きました。 Segmentation fault した後に apache を再起動すれば、新しいモジュールが反映されて正常に動作するものの何故この様なことが起こるのか不思議に思い原因を調査してみました。 % curl http://localhost/ curl: (52) Empty reply from server レスポンスが空です。apache のログには [Thr Mar 29 17:52:01 2007] [notice] child pid 20001 exit signal Segmentation fault (11) この様なエ

    なぜ apache module を更新すると Segmentation fault するのか : DSAS開発者の部屋
    send
    send 2007/03/30
  • フィルタ(filter)の説明 | 井上の日誌 -Apacheの話-

    send
    send 2007/02/16
  • Apacheの脆弱性

    (Last Updated On: 2007年2月15日)まだ確認してませんがこんなのが… http://www.infohacking.com/INFOHACKING_RESEARCH/Our_Advisories/apache/index.html The Apache web server is prone to several non crítical vulnerabilities -by themselves- that could allow by combining them, and on some specific scenarios, to carry out serious attacks, some of them with that impact: 1) Execution of script code in the client side: 1a)Web “d

    Apacheの脆弱性
    send
    send 2007/02/15
    んー。元ネタが確認できん
  • mod_dosdetectorの反応への反応 - stanaka's blog

    先日(id:stanaka:20070204)、公開したmod_dosdetectorですが、ブクマ数が300users越えと予想以上の反響でした。その中で、いくつかFAQ的な反応があったので、それらに対する回答です。 mod_limitipconnでもできるんじゃないの? mod_limitipconnは、同時接続数を制限して、越えた場合は、接続拒否をするというモジュールです。mod_dosdetectorは、DoS判定したクライアントのみを対象とした制御が可能です。この手の定量的なアクセス制御モジュールは、これまでにいくつか開発されているのですが、ほとんどのモジュールが単純にアクセス拒否するだけ、というのも、mod_dosdetectorの開発動機の一つです。 パフォーマンスは? 確かに余分な処理が必要となっているため、CPU負荷は増えています。しかし、はてなのサーバ構成では、リバース

    mod_dosdetectorの反応への反応 - stanaka's blog
    send
    send 2007/02/08
    L7レイヤならではの利点かな
  • ひげぽん OSとか作っちゃうかMona- - Apache2の自作モジュールからで httpd.conf から値をとる

    Apacheの設定は httpd.conf で行いますが独自のモジュールを作成した場合に、独自のディレクティブを定義し設定を読み込みたい場合があります。 モジュール固有のパラメータなどがサーバー毎に異なる場合などに利用できるでしょう。 Apache1.3系での方法は、Apacheモジュール プログラミングガイド (Advanced Server‐side programmingシリーズ)を読めばばっちり分かるのですが Apache2系に関しては情報が少ないのでまとめておきます。 なお今回はディレクトリ毎の設定ではなく、サーバー毎の設定である per-server-config を例にしていますので per-dir-config の場合は適宜読み替えてください。 やることは以下5つ 設定情報を保持する構造体を定義する configを作成する関数を用意する 各ディレクティブを取得して構造体にセ

    ひげぽん OSとか作っちゃうかMona- - Apache2の自作モジュールからで httpd.conf から値をとる
    send
    send 2007/02/08
  • さっき気がついたのだが

    http://d.hatena.ne.jp/stanaka/20070204/1170553603 時間毎のアクセス数で判断してる。 で、ここ増田にはページ毎にエントリ数分の25個、ブックマーク数を表示するためのimgタグがついている。 そう、1ページ見る毎に25アクセスしちゃってるんだよね。 それで、制限開始のリミットがどうやら60アクセス/分あたりらしい。つまり3ページでかかっちゃう。 実際にはブラウザのキャッシュで大体大丈夫だったりするけど、しばらくしてキャッシュが切れたり、切れている過去に遡ったりすると引っかかる事があるようだ。 というわけで、重いと思ったら1分程間を空けてみると良いかも知れない。 あと、たぶんdも似たようなものだろうから、複数のタブブラウザとかで複数エントリを一気に開けた場合に、デザインによってはたくさんイメージ読んだりしても該当するかも。 その辺を疑って、ひどい

    さっき気がついたのだが
    send
    send 2007/02/05
    お。暇があったらソース追ってみよう。
  • サーバにDoS耐性を付ける - stanaka's blog

    ウェブサービスでは、アクセスが集中して、サイトが落ちる、というのは、よくある話です。純粋に人気が出てアクセス集中するなら、サーバ管理側の責任と言われても、しかたないと思います。しかし、botやF5アタックによる突発的な集中アクセスで、落ちてしまう、というのは、運営側としても、あまり納得がいくものではありません。 そのような突発的なアクセスに対応するために、大量のアクセスをしてくるクライアントを検出し、優先度を落すか、アクセス禁止にする方法などがあります。 というわけで、Apacheモジュールでそれを検出するためのmod_dosdetectorを開発しました。(ちなみにコア部分の開発期間は、Apacheモジュールって、どう書くんだっけ、という状態から、3日でした。) mod_dosdetectorは、Apacheモジュールとして動作し、クライアントのIPアドレスごとにアクセス頻度を測定し、設

    サーバにDoS耐性を付ける - stanaka's blog
  • mod_vhost_limit - Netnice Project

    In the world of automobiles, the Chevrolet Corvette is a car that requires no introduction. It’s a vehicle that combines performance, style, and luxury in...

  • Loading...

    send
    send 2006/11/20
  • 眠る開発屋blog Archives

    眠る開発屋blog ある開発屋の雑感。日々勉強。 アーカイブ Javaでソースコードリーディングの ドライブUSB化キット「DN-IDE3525」 CentOSとApache mod_proxy_balancerで妄想すること ディベート 段取りの悪いラーメンcreate_function nanoweb Excelでメール送信 apacheのmoduleで欲しいやつ 久々にOpenIDを眺めてみたが PHP5でWebサーバ モテる返し方 mysqlクエリーチューニング mod_auth_hatena_d.cを作ってみた バブルの話2 mod_swf2html バブルの話 「その他」は作らない JSON_parser.c mod_hatena_auth.c ストアドとか 404リーダー タスポ リップに踊る freemail終了 未履修問題 進学校の思い出 予算駆動開発 東京ガールズ

  • selectよりkqueue,epoll(apache2のススメ) - 最速配信研究会(@yamaz)

    最近3人ほどのエンジニアと話したのだがapache2に対して割とネガティブな意見を持っていた. 曰く「既存モジュールが使えないから」 曰く「スレッドベースってちょっと。。」 曰く「WEBでいい話聞かないから」 3人しか話してないんだけど,3人とも「apache2はスレッドでしか動かない」と思いこんでたようでちょっとおどろいた.apache2でも StartServers 5 MinSpareServers 5 MaxSpareServers 64 MaxClients 100 MaxRequestsPerChild 10000 という設定をすることで今までどおりpreforkモデルで動かすことはできる.preforkモデルだと各種ハンドラもスレッドセーフに無理にすることはないので,わかってて使う分には問題ない. 私がapache2を勧める1番の理由はapache2ではリクエストの多重化処理

    selectよりkqueue,epoll(apache2のススメ) - 最速配信研究会(@yamaz)
    send
    send 2006/11/07
    デフォでpreforkじゃなかったっけ?
  • 404 Blog Not Found:クローラにしかとシカトしてもらう50の方法

    2006年10月28日22:30 カテゴリTips クローラにしかとシカトしてもらう50の方法 というわけで備忘録代わりに。 Apache: The Definitive Guide [邦訳:Apacheハンドブック] [を] Yahoo! Slurp に rel="nofollow" を無視されたYahoo! Slurp に一斉にアクセスされてサーバのロードアベレージが激ヤバ。 とりあえず、CGIスクリプトのファイル名を変更して回避。robots.txt 最も基的なのがこれ。たつをくんがこれを知らないはずはないのだけど一応基からということで。 robotstxt.org Robots Exclusion Standard - Wikipedia, the free encyclopedia http://www.dan.co.jp/robots.txt ちなみに最後のワイルドカードを

    404 Blog Not Found:クローラにしかとシカトしてもらう50の方法
    send
    send 2006/10/30
  • 404 Blog Not Found:perl - BSD::getloadavg

    2006年10月26日20:30 カテゴリLightweight Languages perl - BSD::getloadavg レポートを受け追記; BSD::Sysctlのことも追記 この部分がなんとも惜しいような気がしたので書きました。 Milano::Monolog: mod_rewriteでサーバーの負荷が高いときだけリダイレクトする my ($ldavg1, $ldavg2, $ldavg3) = `uptime` =~ /load average:\s+([.0-9]+),\s+([.0-9]+),\s+([.0-9]+)/; BSD::getloadavg CPAN http://www.dan.co.jp/~dankogai/cpan/BSD-getloadavg-0.01.tar.gz これで当該部分は、 #!/usr/bin/perl use strict; use

    404 Blog Not Found:perl - BSD::getloadavg
  • Milano::Monolog: mod_rewriteでサーバーの負荷が高いときだけリダイレクトする

    mod_rewriteでサーバーの負荷が高いときだけリダイレクトする ワタシが働いている会社のホームページは、たまーにYahooのトピックスからリンクされます。 トピックスに載るとそれはもう大量のアクセスが津波のように押し寄せてきて、あっというまにサーバーのリソースをいつぶしてアクセス不能になってしまいます。 こういうときのために、Contents Delivery Networkによるキャッシングも利用してます。 今までは、リンクされそうになったらmod_rewriteでリダイレクトって方法を使っていました。 でも毎回これをやるのが面倒になってきたので、なんとかならんかなーと思って、RewriteMapに初挑戦してみた。 RewriteMap使えばRewriteCondとかRewriteRuleにプログラムの出力結果を使うことが出来るようになるので、これでWebサーバーのロードアベレー

    Milano::Monolog: mod_rewriteでサーバーの負荷が高いときだけリダイレクトする
  • mod_bf -- brainfuck module for apache

    mod_bf is a brainfuck module for the Apache webserver, providing several handlers for brainfuck code. You can easily create your dynamic webpages with brainfuck now. Besides that, mod_bf also (sort of) aims to be simple example of various uses of the Apache API, much simpler than the mod_example included with the apache distribution. Please see the information in the mod_bf distribution for more i

    send
    send 2006/10/26
    うひゃー