タグ

apacheに関するamari3のブックマーク (81)

  • やっとわかった、リバースプロキシの設定の意味 - @kyanny's blog

    いままでリバースプロキシの設定がよくわかっていなくて、すでに動いているサーバの設定を見よう見まねで使い回してきた。ちゃんと理解しようと思って、マニュアルを読み直したらやっとわかった。設定の方法 (How) がわかったこと以上に、なぜそう書く必要があるかという理由 (Why) を理解できたのが嬉しい。久しぶりに「わかった!」と叫びたくなった。感動を忘れないうちに、思い出せるように、書いておく。 mod_proxy - Apache HTTP サーバ バージョン 2.2 が Apache のプロキシ関連のマニュアル。 mod_proxy を使うことになる。 大事なディレクティブは、 ProxyPass と ProxyPassReverse のふたつ。 ProxyPass これがリバースプロキシをする上でのほとんどすべてのことをやってくれる。実は見慣れた (コピペし慣れた) 設定ではこのディレク

    やっとわかった、リバースプロキシの設定の意味 - @kyanny's blog
  • Apache の並列数を CPU コア数に応じて決定する : DSAS開発者の部屋

    KLab Advent Calendar 2011 「DSAS for Social を支える技術」の10日目です。 昨日の記事 では並列数を設定する基的な方法を紹介しました。 今日は実際に DSAS for Social で利用している設定方法を紹介します。 背景 実際の並列数の設定はマシンのCPUスペックやアプリの特性(レスポンスタイムの 何割をWebサーバーのCPUを使う処理が占めているか)に応じて設定するのですが、 DSAS for Social ではアプリの負荷に応じて柔軟にWebサーバーを 追加・削除するので、CPUスペックが一定ではありません。 具体的に言えば、 Core2 世代の4コアサーバーと、Core i7世代の4コア8スレッド サーバーが Web サーバーとして利用されています。 でも、Webサーバーごとに違う設定ファイルを用意したくはありません。 なんとかできない

    Apache の並列数を CPU コア数に応じて決定する : DSAS開発者の部屋
    amari3
    amari3 2011/12/15
    環境変数で設定するの熱い!
  • 過負荷をかわす Apache の設定 : DSAS開発者の部屋

    KLab Advent Calendar 2011 「DSAS for Social を支える技術」の9日目です。 前回は php を動かしている Apache の手前にリバースプロキシを 置く必要性を解説しました。 今日は、 その前の php のプロセス数を絞る設定と合わせて、実際に Apache で 設定する方法を紹介します。 以降、 php を動かしている Apache の事をアプリサーバー、リバースプロキシ+ 静的ファイル配信を行っている Apache の事をプロキシサーバーと呼びます。 基設定 まずは基的な設定のおさらいです。 アプリサーバー 並列数を絞るには MaxClients を設定します。アプリがどれくらいの時間を CPUの処理で使って、どのくらいの時間を外部リソース待ちに使っているかにも よりますが、だいたいCPU数の1.5倍〜2倍くらいが適当だと思います。 Hyp

    過負荷をかわす Apache の設定 : DSAS開発者の部屋
    amari3
    amari3 2011/12/13
    もう一度読み直した
  • FastCGI環境を構築する - ぱせらんメモ

    長らくPHP屋をやっていたのでずっとmod_phpだったんだけど、いつかはFastCGIもやらんとなぁと思っていたところに、先日Tracでmod_fcgidを導入したのでおさらいしてみる。 以下はググって自分なりにまとめたものなので、認識が間違っているものもあるかもしれないので注意。 FastCGIのメリット CGIプログラムのプロセスが常駐する プログラムの起動オーバーヘッドがない データやリソースをメモリ上で永続化できる(DBコネクションとか) Webサーバに依存しない 公開されたプロトコル FastCGI対応サーバならインターフェイスは同じ Webサーバと独立したプロセスで動く*1 安定(プロセス的な意味で) セキュア(プロセス的な(ry) Webサーバが太らない(処理系のモジュールをロードしなくていいから) バランシングや分散がやりやすい(WebサーバとCGIプログラムを別々のサー

    FastCGI環境を構築する - ぱせらんメモ
  • mod_fcgid - Apache HTTP Server Version 2.5

    Summary Any program assigned to the handler fcgid-script is processed using the FastCGI protocol; mod_fcgid starts a sufficient number instances of the program to handle concurrent requests, and these programs remain running to handle further incoming requests. This is significantly faster than using the default mod_cgi or mod_cgid modules to launch the program upon each request. However, the prog

  • = Clackを動かす.CommonLispでWebアプリ(CGI?)動かせるようになるまで(Apache編) - @peccul is peccu

    ローカルで動かす編の続きです. apacheの設定 ここまでだと外からはみえないっすね.うちはwebサーバーにapache動かしてるんで,mod_lispを使うことにしました. mod_lispのインストール このサイトが家で, Fractal Concept : Download mod_lisp ファイルはこれ. mod_lisp2-1.2.c を持ってきました. mod_lisp-2.43ではない. そんでビルドしたらmod_lisp2.soとかできる.apxsコマンドはapache-develかなんかに入ってたみたいです.peccuサーバーではすでにインストールされてました. % wget http://www.fractalconcept.com:8000/public/open-source/mod_lisp/mod_lisp2.c % sudo /usr/sbin/apxs

    = Clackを動かす.CommonLispでWebアプリ(CGI?)動かせるようになるまで(Apache編) - @peccul is peccu
  • Apache HTTP Serverに情報流出の脆弱性が発覚

    Apache HTTP Serverをリバースプロキシモードで利用している場合にこの問題の影響を受ける。Apacheはパッチを公開して脆弱性に対処した。 Apache HTTP Serverのリバースプロキシ機能(mod_proxy)に新たな脆弱性が発覚し、問題を修正するためのパッチが公開された。 Apacheのセキュリティ情報などによると、この問題はApache HTTP Serverをリバースプロキシモードで利用している場合に影響を受ける。脆弱性を悪用された場合、リモートのユーザーが細工を施したリクエストを送り付けることによって、内部のサーバの情報が流出する恐れがある。 脆弱性が存在するのは、httpd 1.3とhttpd 2.xの全バージョン。Apacheはバージョン2.2.21向けのパッチを公開してこの問題に対処している。

    Apache HTTP Serverに情報流出の脆弱性が発覚
  • Apacheサーバを運用する時に作業効率を100倍にする方法(追記あり) - oranie's blog

    .bashrcに alias htvi='vi /etc/httpd/conf/httpd.conf 'を追記しておく! sudoをちゃんとやっているなら 9/20追記:以下のコマンドは危険です!理由などは次のエントリで。 alias htvi='sudo vi /etc/httpd/conf/httpd.conf 'ですね! 以上! というしょっちゅういじる可能性があって、パスが深い所にあるconfigとかいじるコマンドは alias切っておくと楽という、多分縄文時代からあるネタです。

    Apacheサーバを運用する時に作業効率を100倍にする方法(追記あり) - oranie's blog
    amari3
    amari3 2011/09/21
    セキュリティを考えるなら sudo -e とか sudoedit の方がいいぜ
  • apache脆弱性対策 - Range header DoS vulnerability Apache HTTPD 1.3/2.x (CVE-2011-3192) - うまいぼうぶろぐ

    http://mail-archives.apache.org/mod_mbox/httpd-announce/201108.mbox/browser もうあちこちで大騒ぎになっていてみんな知ってると思うけど。HTTP Requestに非常に長い(コンマ区切りの複数のヘッダ) Rangeヘッダを送られるとapacheのプロセスがメモリいまくるっていう。 追記 2011/9/17 現在でapache 2.2.21 が出ているので、可能であればバージョンアップしときましょう。 ## 追記終わり 対象は全バージョンのapache 攻撃が簡単 (Rangeヘッダをちょろっといじるだけ: 某所にupされてるperlも80行程度 ということで結構厄介かも。すぐパッチが出るとのことだけど、急いで対応する場合は↑のURLのとおりhttpd.confを設定する。 apache 2.2の場合はmod_hea

    apache脆弱性対策 - Range header DoS vulnerability Apache HTTPD 1.3/2.x (CVE-2011-3192) - うまいぼうぶろぐ
  • Apache killerは危険~Apache killerを評価する上での注意~

    Apacheの脆弱性(CVE-2011-3192)いわゆるApache killerが話題になっていますが、その脅威については一部誤解があるようです。 以下は、非常に脅威とする報告の例です。 一方今回のはプロセスの肥大化を伴うので、実メモリ消費して更にスワップも使い尽くしてOS毎激重になったあげくLinuxとかの場合はOOM Killer発動と、他のプロセスや場合によってはOSを巻き込んで逝ってしまいます。 CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.xより引用 以下は、それほど脅威でなかったとする報告の例です。 pooh.gr.jp は結構頑丈だったので 60 並列でやっと CPU idle 30% まで減らせた。 Apache Killer (CVE-2011-3192) 対策 for CentOS 5

  • Apache, Lighttpd, nginx における持続的接続と lingering close の実装について - kazuhoのメモ置き場

    lingering close がなんであるかについては、Apache Performance Tuning - Apache HTTP Server Version 2.2 を参照。 Apache 2.2.16 と lighttpd 1.4.28 は、必ずアプリケーションレイヤでの lingering close を行う Apache は2秒、lighttpd は5秒 nginx 0.8.53 は直前に request body があった場合のみ SO_LINGER を利用する これは古い HTTP client が request body のあとに CRLF つけてくることがある対策だと思う HTTP pipelining の関係で RST が飛ぶ場合の対策コードはないかも 一方で、msie6 で POST の場合、あるいは safari だと常に keep-alive を disa

    Apache, Lighttpd, nginx における持続的接続と lingering close の実装について - kazuhoのメモ置き場
  • 今こそ見直すApacheの設定 - blog.nomadscafe.jp

    nginxやvarnishなどがアツいですが、Apacheもまだまだ実績や安定性から採用されていると思います。ここではデフォルトとは異なる値に変更するサーバ設定を中心に、パフォーマンス改善、安全性向上のためのApacheの設定を紹介します。 mpmの確認 > /path/to/bin/httpd -V Server version: Apache/2.2.19 (Unix) Server built: Jun 23 2011 17:13:13 Server's Module Magic Number: 20051115:28 Server loaded: APR 1.4.5, APR-Util 1.3.12 Compiled using: APR 1.4.5, APR-Util 1.3.12 Architecture: 64-bit Server MPM: Worker PreforkやW

    amari3
    amari3 2011/07/06
    もう一回読み直してる
  • WordPressをCentOS+Apache+mod_fastcgi+PHP-FPMを使って動かしてみた - As a Futurist...

    このブログはさくら VPS で動かしているのですが、さくら VPS の一番弱いところはメモリの大きさが 512MB というところなんですよね。PHP みたいな LL は結構メモリは富豪的に使うので mod_php 使って httpd のメモリを膨れさせてると、同時接続数そんなに上げられないわけです。 アプリケーションサーバを WEB サーバと切り離すのであれば、定番としては WEB サーバとして Apache+mod_proxy や lighttpd や nginx を前段に置いて、 mod_php で起動した Apache にプロキシして上げるというのが一つのやり方です。 ただ、1 台のホストでやってるので Apache を 2 種類上げるとかなんか気持ち悪いし、 Apache 以外はあんまりよく分からない。 こんな時には、FastCGI を使って httpd から切り離すのが常套手段な

    WordPressをCentOS+Apache+mod_fastcgi+PHP-FPMを使って動かしてみた - As a Futurist...
  • The Perfect LAMP Stack – Apache2, FastCGI, PHP-FPM, APC

  • Apache チューニング Tips | Carpe Diem

    先日、Web サーバ勉強会 #2 が開かれました。内容は、Apache のチューニングということで、参加したかったのですが、他の予定があって参加できませんでした。 そこで、僕が個人的に行っている Apache のチューニングを紹介したいと思います。最初、スライドで作成しようかと思ったのですが、ブログにまとめたほうがよさそうなのでブログにまとめていきます。 まず、大前提として Apache をチューニングするうえで、大事なことはその Apache が提供する Web サービスの種類のよって大きくチューニングする内容が異なるということです。例えば、動画・写真共有サービスと株価情報のサービスを比較すると、当然のことながら大きくサービスの内容が異なりますし、HTTP レベルでみるとクライアントからのリクエスト数、データサイズ、などがかなり違ってきます。 ですので、まずは自分が扱っているウェブサービ

  • サーバ証明書の作成

    ここでは、通信の暗号化が目的なので自分がCAになって自己認証でサーバ証明書を作成しています。基的な手順は、Apacheのマニュアルに従っています。 前準備として、サーバ証明書作成の最終段階でmod_ssl付属のsign.shコマンドを使用しますので、こちらからmod_sslの最新版をダウンロードし、任意の場所に展開だけしておきます。おやじがダウンロードしたのは、mod_ssl-2.8.11-1.3.27.tar.gzです。展開後、pkg.contrib配下にsign.shがあることを確認しておきます。 また、以降はopensslのコマンドを使って、鍵や証明書を所定の場所(ここでは、/usr/local/certs)に作成していきますので、opensslへのパスが通っていることが前提になりますが、RedHatなら問題ありません。鍵や証明書を作成するディレクトリを作成し、移動します。

  • CentOS5 Webサーバーの構築[Apache] アクセスを制限する - itochif.com

    Apacheでアクセスを制限するには、パスワードで制限する方法とクライアント証明書で制限する方法があります。 今回は以下のような条件で制限を行います。 Webの公開ディレクトリは/var/www/html 制限をかけるディレクトリは/var/www/html/access(http://localhost/access/) パスワードファイルを置く場所は/var/www/private .htaccessに記述する場合はhttpd.conf内で.htaccessによる制御を許可しておく まず、Basic認証でのパスワード制限です。httpd.confに記述する方法と、.htaccessに記述する方法があります。Basic認証では、ユーザー名/パスワードがBase64でエンコードされて送信されます。Base64でエンコードされた文字列は容易にデコード出来るため、Basic認証を利用する場合は

  • CactiでApacheを監視してみよー - なんちゃらエンジニアの楽しい日々

    Cacti■Webサーバ側の設定Apacheのhttpd.confもしくはIncludeで指定したファイル内に下記内容を記述ExtendedStatus On(1)(2) SetHandler server-status(3) Order deny,allow(4) Deny from all Allow from 192.168.100.0/24(1)Apacheへのリクエストに対して拡張ステータス情報を保存する(2)http://サーバIP/server-status/というURLへのアクセスを制御する(3)上記のURLでアクセスされたときにサーバの状態を表示させるためのもん。(4)IPアクセス制限。今はローカル内だけアクセスできるようにしてある。※ExtendedStatusでのステータス情報収集処理でサーバの動作を遅延させる恐れがあるっぽい。そんでApacheを再起動して設定を反映

  • ウノウラボ 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_expires、mod_deflateによるサイトパフォーマンスの改善

    cles::blog 平常心是道 blogs: cles::blog NP_cles() « 新・紋章の発売は7/15、アマゾンでも予約可能に :: Unlha32.dllの開発が停止、LHAの使用中止を呼びかけへ » 2010/06/06 mod_expires、mod_deflateによるサイトパフォーマンスの改善  httpd  server  tuning  rfc 88 1へぇ このサイトにPage SpeedやYSlowをかけてみたら、パフォーマンスの改善方法としてページをgzip転送したほうが良いよとか、画像がキャッシュされるようにLast-ModifiedやETagを出力した方がいいよというアドバイスが出るのでちょっと改善してみました。 † mod_deflateでページをgzip圧縮する htmlやxml、javascriptcssなどのテキストデータは圧縮するとかなり

    mod_expires、mod_deflateによるサイトパフォーマンスの改善