タグ

apacheに関するkicyonのブックマーク (116)

  • MPM(Multi-Proccessing Module)の設定

    9.6. MPM(Multi-Proccessing Module)の設定Apache2.0 以降の大きな特徴の 1 つに、サーバーデーモンの実行部分を司るプログラムが MPM(Multi-Proccessing Module) としてモジュール化され、使用する MPM を選択できるようになったことがあげられます。Apache には動作の異なるいくつかの MPM が用意されており、構築する Web サイトの規模や OS によって、最適な MPM を選択することが可能です。Aapche2.2 からは event MPM が追加されています。Linux で選択可能な MPM には、以下の種類があります。 Apache 1.3 の動作モデルと同様の方法でクライアントからのリクエストを処理します。prefork は、あらかじめ複数のプロセスを用意しておき、クライアントからのリクエストを待ち受けます

  • lighttpd + FastCGI は mod_perl + Apache1.3 より1割ほど高速 :: Drk7jp

    巷で超高速 Web サーバとして話題になっている lighttpd を試してみました。lighttpd に関する日語ドキュメントは非常に少なく、ちょっと込み入った設定ファイルの記述方法とかの解析に手間取りました。 lighttpd のコンセプトは、「セキュアで省メモリで高速に動作し、柔軟性もある」なのですが、「lighttpd 公式サイトのベンチマーク結果」や「UnknownPlace. - Catalyst ベンチ」で簡単な Catalyst - Hello.cgi のベンチマークが公開されているとおり、Apache 1系、Apache 2系よりも高速に動作するようです。特に static なページの処理は Apache の 2〜3 倍程度は高速に処理できるみたいです。 また注目すべき点として、Apache + mod_perl よりも lighttpd + FastCGI の方が1割

  • てくにかるむ

    てくにかるむ 「エラーをなくすことは非常に有益で時には新しい真実や事実を作り上げるよりも勝る」 ー チャールズ・ダーウィン WebBrowserコンポーネントを .NET Framework であれこれ料理したときのいろいろ。 » ActivePerl 体は実行インストーラで何時でもインストールできるが、ppm や cpan で組み込む追加モジュールはオンライン構築が前提になっている。だが世間から断絶された秘匿ネットワークや、そもそもインターネットに接続するという概念のない PCやサーバに納品したり、機材リプレースで開発環境を再構築しなければならない場面では、USBメモリや DVD-Rからのオフラインインストールが出来なければ話にならない。そもそもバージョンが数世代古くなるとダウンロード元の ppmレポジトリが有料プラン専用に切り替えられて、いつもで気軽に再ダウンロードすることができなく

  • mod_perl 環境下でやっちゃダメなものをいくつか。

    mod_perl 環境下でやっちゃダメなものをいくつか。 exit システム関数 正確には CORE::exit ですけど、実行すると現在の Apache プロセス(nobody)が落っこちます。 当然 root の Apache は子プロセスを立ち上げなおすんで 余分なシステム負荷が掛かりますし、mod_perl のメリットである キャッシュ効果が得られない=普通のCGI実行より鈍足になるという、 なかなか致命的な結果になってしまいます(^^; これを避けるために、mod_perl 環境下では exit() 関数 が 定義されてるので、必要な場合には必ず丸括弧をつけませう。 ○ exit( 0 ); × exit 0; 同じことが、die システム関数 にも言えます。こっちは素直に 「use Carp」して「croak 関数」で代替したほうが安全だと思う。 #eval の中で CORE:

  • naoya.dyndns.org is offline

    naoya.dyndns.org is currently offline. Please try again later. Questions about our services? Learn more at Dyn.com.

  • apache に mod_perl を組み込む|perl|@OMAKASE

    mod_perl とは? Apache モジュール内にラップされた完全な Perl インタプリタ のことです。通常 Perl で書かれたスクリプトを実行するには毎回 perl インタプリタを呼び出しコンパイル・実行されます。ところが mod_perl の場合は一度呼び出された後はコンパイルされた状態のまま apache 内で次のリクエストを待ち続けます。つまり perl スクリプトが apache の機能として実行されます。 一説には普通の perl スクリプト(cgi)と比較すると200倍速いとされています。他のメジャー言語である php などと比較しても速い実行結果があるようです。実際にphpjavaとでベンチマークをとりテストした方もいるようです。 JavaPerlよりも比較にならないほど速い? 巷では「perl は遅いから...」とよく言われてますが遅いという理由だけで C言語

  • @IT:httpd.confによるWebサーバの最適化(1/3)

    などに配置されています。 なお、httpd.confの更新内容を有効にするには、httpd.conf編集後にApacheを再起動する必要があります。Apacheの再起動は、第1回の「起動/終了、サービスの登録」を参考にしてください。 不要な機能、設定の削除 不要なモジュールの削除 Apacheは、モジュールによって機能を追加することができます。Apacheインストール時に組み込まれているモジュールは、以下のようにして確認できます。

    @IT:httpd.confによるWebサーバの最適化(1/3)
  • Apacheに新たな脆弱性発見 | スラド セキュリティ

    ストーリー by hylom 2009年06月23日 15時12分 Slowlorisはワシントン条約で保護されている小型のサルだそうで 部門より Apacheに、DoS攻撃に繋がる脆弱性が新たに見つかったそうだ(家/.記事より) この脆弱性は、これを利用したHTTP DoSツール「Slowloris」がリリースされたことから明らかになったとのこと。この攻撃ツールはApacheに不完全なリクエストヘッダーを送り続けるもので、Apacheが最後のヘッダが送られてくるのを待つ間、偽のヘッダを送ることで接続をオープンにし続け、Apacheのプロセスを一杯にさせるものだという。 脆弱性はApache 1.x、 2.x、 dhttpd、 GoAhead WebServer、そしてSquidにて確認されているが、IIS6.0、 IIS7.0、およびlighttpdでは確認されていないとのこと。 SA

  • Apache DoS攻撃ツール Slowloris

    最近、HTTP DoS攻撃ツール Slowlorisがリリースされました。 http://ha.ckers.org/slowloris/ FreeBSD + Apache な環境で試してみましたが、確かに、アクセス不能な状態(Apacheが全部使われてしまう)状態になってしまいます。 FreeBSDのApacheは、Accept Filterを利用しているために、DoS耐性は強いと思っていたのですが、意外な結果でした。 Slowlorisは、HTTPサーバに不完全なリクエストヘッダを送り続けるツールです。 Apacheが最後のヘッダが送信されてくるまでの間、偽のヘッダを送信し続け、接続をオープンし続け、Apacheのプロセスを使用し続け、すべてのApacheを掴んで他のリクエストに応えられなくしてしまいます。 Apache 1.x, 2.x, httpd, GoAhead WebServe

  • ウノウラボ Unoh Labs: Apache MPM の基礎をしっかりと理解しよう!

    naoya です。最近、とうとう花粉症の季節に入ったので、生まれて初めて空気清浄機を購入しました。 さて、今日は Apache HTTP サーバの MPM (Multi Processing Module) について解説したいと思います。普段、ウェブサーバを構築するとき、Apache HTTP サーバを使うことが多いと思いますが、Apache HTTP サーバを使う上で MPM について理解しておくことは大事です。 この MPM ですが、Apache HTTP サーバではリクエストを処理する部分のことをさします。MPM は、Apache HTTP サーバ 2.0 系から採用されています。Apache HTTP サーバの MPM には、次の種類があります。 prefork worker perchild winnt それぞれの MPM について解説します。まずは、一番代表的な prefork

  • mod_rewriteのRewriteCondで、SetEnvIfの環境変数を利用する

    謎のタイトルになりましたが、、、 apacheのmod_rewriteでリライトするときに、SetEnvIfやSetEnvIfNoCaseで設定した環境変数を参照したい場合があります。 マニュアルにはあんまり丁寧に出てないんですが、Using Environment Variablesの最後にちゃーんと書いてありました。 これで環境変数を使えます。 mod_rewriteのほうには書いてないのがちょっと不親切ですね。。 ↓以下サンプルです。 プライベートIPアドレスからの接続の場合に特別なページを表示するサンプルです。 ・プライベートIPアドレスから/portal/への接続⇒/office/~のコンテンツを表示 ・それ以外から/portal/への接続⇒/public/~のコンテンツを表示 RewriteEngine On SetEnvIf Remote_Addr ^192.168. OFF

  • Apache の IP ベースのバーチャルホストサポート - Apache HTTP サーバ バージョン 2.2

    システム要件 IP ベース という名前が示すように、サーバには IP ベースのバーチャルホストそれぞれにつき、別々の IP アドレスが 必要です。複数の物理コネクションを持っているマシンを用意するか、 最近のオペレーティングシステムでサポートされているバーチャル インタフェース (詳細はシステムの説明書を読んでください。たいていは "ip エイリアス" と呼ばれていて、設定には普通 "ifconfig" コマンドを 使います) を使うかで実現できます。 Apache の設定方法 複数のホストをサポートするように Apache を設定する方法は 二通りあります。別の httpd デーモンを各ホスト毎に実行するか、 すべてのバーチャルホストをサポートするデーモンを一つ実行するかです。 以下のときには複数のデーモンを使うと良いでしょう: 会社1 はウェブ経由以外では会社2 からはデータを読まれた

  • バインド - Apache HTTP サーバ バージョン 2.2

    Apache は起動時に、ローカルマシンのあるポートおよびアドレス に対して接続し、リクエストが来るのを待ちます。 デフォルトではマシンのすべてのアドレスに対して listen します。 しかしながら、特定のポートか、特定のアドレスのみか、 またはそれらの組み合わせのいずれかを listen するようにする必要があります。 これは、異なる IP アドレス、ホスト名、ポートに対する Apache の応答方法を決定するバーチャルホスト機能と組み合わせて使われます。 Listen ディレクティブで、特定のポートやアドレス・ポートの組からのみ入ってくる リクエストを受け付けるようにできます。 もしポート番号のみが Listen ディレクティブで指定された場合は、 すべてのインターフェースの与えられたポート番号を listen します。 IP アドレスがポート番号と同時に与えられた場合は、 サーバは

  • 名前ベースのバーチャルホスト - Apache HTTP サーバ バージョン 2.2

    名前ベースと IP ベースのバーチャルホストの比較 IP ベースのバーチャルホストでは、応答する バーチャルホストへのコネクションを決定するために IP アドレスを使用します。ですから、それぞれのホストに個々に IP アドレスが必要になります。これに対して名前ベースのバーチャルホストでは、 クライアントが HTTP ヘッダの一部としてホスト名を告げる、 ということに依存します。この技術で同一 IP アドレスを異なる多数のホストで共有しています。 名前ベースのバーチャルホストは通常単純で、それぞれのホスト名と それに対応する正確な IP アドレスを DNS で設定し、異なる ホスト名を区別するように Apache HTTP サーバを設定するだけです。 さらに、名前ベースのバーチャルホストは不足する IP アドレスの需要を緩和します。したがって、IP ベースのバーチャルホストを 選択すべき特定

  • Issues Regarding DNS and Apache HTTP Server - Apache HTTP Server Version 2.4

    This page could be summarized with the statement: don't configure Apache HTTP Server in such a way that it relies on DNS resolution for parsing of the configuration files. If httpd requires DNS resolution to parse the configuration files then your server may be subject to reliability problems (ie. it might not start up), or denial and theft of service attacks (including virtual hosts able to steal

  • ログファイル - Apache HTTP サーバ

  • mod_proxy - Apache HTTP サーバ

    このモジュールは Apache のプロキシ/ゲートウェイ機能を実装しています。 AJP13 (Apache JServe Protocol version 1.3), FTP, CONNECT (SSL 用), HTTP/0.9, HTTP/1.0, HTTP/1.1 のプロキシ機能を実装しています。これらのプロトコルやその他のプロトコル用の プロキシ機能を持った、他のモジュールに接続するようにも設定できます。 Apache のプロキシ機能は mod_proxy の他に、 いくつかのモジュールに分割されています: mod_proxy_http, mod_proxy_ftp, mod_proxy_ajp, mod_proxy_balancer, mod_proxy_connect です。ですから、 特定のプロキシの機能を使いたい場合は、mod_proxy と 該当するモジュールをサーバに (

  • Apache の環境変数 - Apache HTTP サーバ

    的な環境の操作 Apache において環境変数を設定する一番基的な方法は、 無条件に環境変数を設定する SetEnv ディレクティブを使用することです。 PassEnv ディレクティブにより、Apache が起動されたシェルの 環境変数を渡すこともできます。 リクエスト毎に条件に基づいて設定する より柔軟性を高めるために、mod_setenvif で提供されているディレクティブを使用することで、リクエストの 特性に基づいて環境変数を設定することができます。例えば、特定のブラウザ (User-Agent) のリクエストや特定の Referer [意図的な綴りです] (訳注: 正しい綴りは referrer ですが、HTTP の仕様では Referer となっています) ヘッダが見つかったときのみ変数を設定することができます。 mod_rewrite の RewriteRule ディレク

  • Apache バーチャルホスト説明書 - Apache HTTP サーバ バージョン 2.2

    Please note This document refers to the 2.2 version of Apache httpd, which is no longer maintained. The active release is documented here. If you have not already upgraded, please follow this link for more information. You may follow this link to go to the current version of this document. バーチャルホストという用語は、1 台のマシン上で (www.company1.com and www.company2.com のような) 二つ以上のウェブサイトを扱う運用方法のことを指します。 バーチャルホストには、