タグ

apacheに関するcooldaemonのブックマーク (53)

  • YAPC::Asia 2009で「『Ficia』インフラとPerlにまつわるエトセトラ」というタイトルでしゃべってきました - (ひ)メモ

    YAPC::Asia 2009 第一日目で「『Ficia』インフラとPerlにまつわるエトセトラ」というタイトルでしゃべってきましたのでその資料を公開します。 『Ficia』インフラとPerlにまつわるエトセトラView more documents from Masaaki HIROSE. 他の方のスライドも http://www.slideshare.net/event/yapcasia-2009 から参照できるようでっす。 以下、今回のトークの内容で参考にさせてもらったURLのリストです。 Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる - naoyaのはてなダイアリー http://d.hatena.ne.jp/naoya/20080212/1202830671 mod_perl における C10K Problem, 竹迫 良範 http

    YAPC::Asia 2009で「『Ficia』インフラとPerlにまつわるエトセトラ」というタイトルでしゃべってきました - (ひ)メモ
  • 第19回 知っておきたいApacheの基礎知識 その15 | gihyo.jp

    Apacheを使う大きな魅力のうちの1つが、さまざまなモジュールによって提供されている豊富な機能でしょう。連載でも、Apacheに標準で付属しているモジュールを紹介してきました。 しかし、Apacheで利用することのできるモジュールは標準で付属できるものだけでなくサードパーティ製のものも利用することができます。標準モジュールだけでは実現しない機能がある……とお悩みの方は是非サードパーティ製のモジュールを試してみましょう。 今回は、知っておくと便利なサードパーティ製のモジュールを一部紹介したいと思います。 mod_securityセキュリティ向上を どれだけ気を配っていても、Webアプリケーションの脆弱性は出てしまうもの。となると、前段のApacheで怪しいアクセスをはじいてしまえばある程度は安全に利用することができそうですね。そういった発想から生まれたモジュールが、mod_securi

    第19回 知っておきたいApacheの基礎知識 その15 | gihyo.jp
  • passengerとmod_autoindex - 世界線航跡蔵

    Passenger を使っていて、ディレクトリのautoindexが効かなくて困った。 Passengerもいくらか枯れてきている感じなので先日試したところ、確かに管理が楽なので最近気に入っている。ちょっと前まではRailsアプリケーションのデプロイと言えばmongrel+mod_proxy_blancerだったのだけれども、最近はpassengerの人気が上がっている。 passenger人気の理由はいくつかある。 Rack という汎用の仕組みをサポートしていること。だから、passengerがあればrailsだけでなくmerbもsinatraも動く。 デプロイが楽なこと。SSHでサーバーに入ってアプリケーションサーバーを再起動、とかやらなくて良い。まーこれはcapistranoやvladでデプロイしている私にはあまり関係ないけど、PHPアプリケーションやJava EE warの「ディレ

    passengerとmod_autoindex - 世界線航跡蔵
  • AddModRewriteInternalFunction - mizzy.org - Trac

    Apache モジュール界のスイスアーミーナイフこと mod_rewrite の中でも、最も何でもありな rewrite ができるのが、RewriteMap での prg タイプによる外部プログラム実行ですが、こいつは外部プログラムがひとつだけ常駐し、httpd と標準入出力を介してやりとりする、という形なので、並列処理させることができません。これは rewrite 処理するときにデータベースへ問い合わせるなど、I/O ブロッキングが発生するような処理をさせたいときには致命的なパフォーマンス劣化を引き起こすことになります。 これを解決するためには、Apache モジュールの中で望みの rewrite 処理をさせるようにすればいいのでは、と思い、RewriteMap にある int タイプに好きな internal function を追加できればいけるんじゃないないか、と考えたものの、mo

  • Passenger: Keeping ApplicationSpawner alive speeds up spawning an instance

    Passenger: Keeping ApplicationSpawner alive speeds up spawning an instance アクセス頻度が少ないサイトで Passenger を使っている場合、しばらくしてからアクセスするとデプロイ直後や apache のリスタート直後と同じくらいレスポンスが遅くなることがあります。 Passenger は fork 時の copy-on-write により複数のアプリケーションプロセスが消費する実メモリのサイズが小さくなるようになっていて、その fork も以下のような3段階で行っているようです。 最初に起動する spawn server から fork して、 Rails をロード (framework spawner) framework spawner から fork して、アプリケーションをロード (application

    cooldaemon
    cooldaemon 2009/04/02
    原因が解ってスッキリした(w;
  • Big Sky :: Apacheでセキュアなアクセス制限を提供できるモジュール mod_access_token を試した。

    livedoor 製品で mod_access_token というのが出たみたいです。 livedoor ラボ「EDGE」 開発日誌 : 「mod_access_token」の配布開始と「EDGE src」公開のお知らせ - livedoor Blog(ブログ) ウェブサイト上の画像やファイルに有効期限を指定して、ユーザーに一時的なダウンロードを許可する、ライブドアで独自開発したApacheモジュールです。このモジュールをApache Webサーバに組み込むことにより、画像やファイルをウェブ上で公開するときに有効期限をつけることができるようになり、Webアプリケーションと組み合わせる事で公開範囲の制御を行なう事が可能になります。 http://blog.livedoor.jp/edge_labs/archives/717201.html modaccesstoken - Google Co

    Big Sky :: Apacheでセキュアなアクセス制限を提供できるモジュール mod_access_token を試した。
  • 堀愚霊瑠の指摘で気付いた、はてなスターの静的ファイルとか想像以上にアレな件 : にぽたん研究所

    id:HolyGrail (堀愚霊瑠氏) の「はてなブックマークが重い件について、Page Detailerというツールを使って調べてみる - id:HolyGrailとid:HoryGrailの区別がつかない日記」とか見てて、色々問題点が指摘されてて、うん、まぁそうだねーとか色々と思いつつ、YSlow は、有用なツールである反面、減点基準が必ずしも全てのサイトに適合しないというか、ハッキリ言ってしまえば Yahoo! Inc. 基準すぎるので、鵜呑みにし過ぎるのもどうかなーとか思ってた。 で、気になったのは 13. Configure ETags ETagsっていうのはサーバ上のファイルとブラウザのキャッシュが一致しているかどうかを検証するためのものなのですが、正しく利用できていないのであれば、ETagsは無駄なだけなので取り除いてやりましょう、という項目です。 http://s.hat

    堀愚霊瑠の指摘で気付いた、はてなスターの静的ファイルとか想像以上にアレな件 : にぽたん研究所
  • #!shebang.jp : 社内で使った Apache モジュールの資料

    November 21, 200811:00 社内で使った Apache モジュールの資料 カテゴリ技術ネタ 社内の技術MTGで Apache モジュール入門なプレゼンをしたので、資料公開します。 非常に基礎的な内容ですが。 実際の Web サービスでの Apache モジュールの使いどころとしては、translate_name フェーズでゴニョる事が多いですね。 ユーザーへみせる URL と実体の場所との関係が複雑化してきた際には Rewrite でがんばるよりモジュール書いちゃった方がスッキリします。Apache ModuleView SlideShare presentation or Upload your own. (tags: apache module) 「技術ネタ」カテゴリの最新記事 タグ :#apache#presentation

  • mod_concat で複数ファイルを連結して配信する - 酒日記 はてな支店

    先日リリースした某サービスの HTML を見ていたら、外部 js ファイルの読み込みに が十数行ずらずらと並んでいるのを発見。 これ、確か Apache module でまとめて配信してくれるのがあったよなあ……とブクマを掘り起こして、mod_concat を見つけたので試してみた。 ソースコードのコメントに * The Idea was initially thought of by David Davis in Vox, and reimplemented in perlbal. とあるように、もともとは Perlbal が持っている機能を Apache module にしたもの。 svn からチェックアウトして apxs でコンパイル & インストール。 $ svn checkout http://modconcat.googlecode.com/svn/trunk/ modconc

    mod_concat で複数ファイルを連結して配信する - 酒日記 はてな支店
    cooldaemon
    cooldaemon 2008/11/10
    js は、1ファイルにまとめて圧縮してからデプロイするのが基本かな?と思います。
  • Apache2.2.9のmod_proxyでのリバースプロキシではまる - のほほん

    22:39production環境でApacheのリバースプロキシを使おうとすると毎回はまります。 2.2.9のmod_proxy2.2.9は、バックエンドのWebサーバとkeep-aliveらしい通信ができるようになってると喜んでたのですが、ブラウザからRSTを出した場合、ProxyTimeoutの設定値の秒数(バックエンドが応答を返さない場合)だけ、リバースプロキシとバックエンドのWebサーバの通信がESTABLISHEDのまま残ります。結果、503のエラーが多発します。これは何を意味するかというと、あるブラウザからリロードしまくるだけで、ProxyTimeoutの時間分だけバックエンドWebサーバのMaxClientsを溢れさせることができちゃいます。それ以外にもBug 45362 – Reverse Proxy Threads or Children spinning on CPU

  • DSAS開発者の部屋:ケータイやクローラの判別などに使えるmod_cidr_lookupを公開しました

    mod_cidr_lookupというApacheモジュールを公開しました。 http://lab.klab.org/wiki/Mod_cidr_lookup mod_cidr_lookupは、アクセスしてきたクライアントのIPアドレスが、指定したCIDRブロック群のいずれかにマッチするかどうかを判別するApacheモジュールです。 Apache 2.0と2.2系に対応しています。 マッチした結果は、環境変数 (X_CLIENT_TYPE) とHTTPリクエストヘッダ (X-Client-Type) にセットするので、Apache自身とバックエンドのWebアプリの両方で同じ情報を参照することができます。 このモジュールを使うメリット 簡単にクライアントの種類を知ることができる 判別処理はモジュールが行ってくれるので、のちほどお見せるように、Webアプリやhttpd.confでは環境変数やリク

    DSAS開発者の部屋:ケータイやクローラの判別などに使えるmod_cidr_lookupを公開しました
  • ロングテールな画像配信 その2 - 3,000万の画像を配信するシステム - mixi engineer blog

    Squidを検索する度に最初に表示される画像検索の結果に吹き出しそうになる開発部・システム運用グループの長野です。前回のロングテールな画像配信のその2ということで、実際の画像配信システムについて書かせて頂きます。 ■プロフィール画像の配信について 前回紹介しましたが、mixiにおいてプロフィール写真を設定を設定しているユーザ数は全体の約70%、1,000万人の方が設定をされています。現在配信をしているプロフィール画像のサイズは180x180、76x76、40x40と3サイズあり、合計3,000万以上のファイル数になっています。また、もっともよく使われる76x76のサイズ1,000万件において、1日にアクセスされる画像の数は800万ファイル以上、うち97%が30回以下と非常に広範囲に渡ってアクセスされています。そのため大量の画像を配信できる仕組みが必要になります。 ■配信システムの全体像 プ

    ロングテールな画像配信 その2 - 3,000万の画像を配信するシステム - mixi engineer blog
  • tips - ApacheのLogフォーマットの方を変えて高速化 : 404 Blog Not Found

    2007年10月05日00:00 カテゴリTipsLightweight Languages tips - ApacheのLogフォーマットの方を変えて高速化 というより、高負荷サーバーの場合、ApacheのLog Formatを変更しちゃった方がいいでしょう。 ? (高速に)Apache の log を解析する正規表現 : a++ My RSS 管理人ブログ こんなの広めちゃいかん と思いついついエントリ。具体的には、 LogFormat "%h\t%l\t%u\t%t\t\"%r\"\t%>s\t%b\t\"%{Referer}i\"\t\"%{User-Agent}i\"" combined_tsv ないし、さらに LogFormat "%h\t%l\t%u\t%t\t%r\t%>s\t%b\t%{Referer}i\t%{User-Agent}i" combined_tsv として

    tips - ApacheのLogフォーマットの方を変えて高速化 : 404 Blog Not Found
    cooldaemon
    cooldaemon 2007/10/07
    ログを tab 区切りに
  • [補足記事]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開発者の部屋
  • ヽ( ・∀・)ノくまくまー(2007-08-20)

    4コアに期待しちゃって眠れないってこういう気分なの? 静的ファイルにも Rails にも concurrent に ab レスポンスボディは同じ結果になる 最初は静的ファイルに "nksk" かな? 予想は全部、Rails は×マーク 負け ちゃめちゃめそーおー Rails は100倍かかるの?少し心配だけどわくわくしてるわ DB・ERb は必要無いわ、David が驚くくらい 早く render :text=>"nksk" しちゃうもん production モードも完璧だし nksk ベクトル

  • ブラウザキャッシュの挙動を見てみる - 日向夏特殊応援部隊

    改めて勉強したかったので、こんなテストしてみました。 Apacheの設定とテスト内容 <VirtualHost *:80> ServerAdmin zigorou@localhost DocumentRoot /home/zigorou/www/cache ServerName cachetest.art-code.org ExpiresDefault "access plus 5 minutes" Alias /test1 /home/zigorou/www/cache/test Alias /test2 /home/zigorou/www/cache/test Alias /test3 /home/zigorou/www/cache/test <Location /test1> FileETag None ExpiresActive Off </Location> <Location

    ブラウザキャッシュの挙動を見てみる - 日向夏特殊応援部隊
  • CentOS で構築する自宅サーバ : Apache + lighttpd で Rails を動かす

    Ruby on Rails は、圧倒的な開発効率から人気を博している Web アプリケーション・フレームワークですが、いざ番稼動させる場合、どういった構成で稼動させるかにたくさんの選択肢があり、悩ましいところです。Web サーバに lighttpd を使い、 FastCGI アプリケーションとして動作させるのがひとつの解として少なくない採用を得ていますが、Web サーバ単体として見た場合は、Apache がまだまだデファクトスタンダードの地位にあり、特に Rails アプリケーション以外にも稼動させている Web アプリケーションがある場合は、lighttpd に完全移行するのは難しいのではないでしょうか? しかし、CentOS 4.x や CentOS 5.x で標準採用されている Apache のバージョンでは、FastCGI の動作に不安がある(不安定である)という声も聞かれます。

  • MODULE.JP - Apache Portable Runtimeをあなたのプロジェクトに取り込む

    Apache HTTP Server 2.x系でプラットフォーム依存部分を吸収し、一貫したAPIを提供するために利用されているライブラリAPR - Apache Portable Runtimeを、Apache以外のプロジェクトで利用するための方法。 Apache module APIの美味しいドコ取り APRを使用するとApache module APIで利用できていた リソースプール 扱いやすく安全な文字列処理関数 動的なデータ型 などを、Apache HTTP Server以外のプログラムで利用できます。さらに メモリマップドI/O 共有メモリ スレッド など、プラットフォームごとにAPIやオプションが異なる機能も、一貫したAPIで利用する事ができるようになります。 しかしASFの他のプロジェクトと同様に、APIのリファレンスマニュアルはあれど、その利用方法やサンプルに関するドキュメ

  • mod_xsendfile を使う - 酒日記 はてな支店

    mod_xsendfile for Apache2/Apache2.2 という Apache モジュールがありまして、これを使うとレスポンスヘッダに X-Sendfile: path/to/file と出力することで、Apache がレスポンスのボディをファイルの中身で差し替えてくれる。 Webアプリケーションで認証後、大きなファイルをダウンロードさせるような用途に便利。 このモジュールはその名の通り sendfile システムコールを(使えれば)使うので、アプリケーションが自前でファイルの中身を読んで送信するよりも速い(軽い)はず。http://www.linux.or.jp/JM/html/LDP_man-pages/man2/sendfile.2.html ってことでベンチマーク取ってみた。 1. 普通に静的ファイルを Apache が serve 2. mod_xsendfile

    mod_xsendfile を使う - 酒日記 はてな支店
  • 続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵

    さて、昨日は SSIとの組み合わせでPageキャッシュの適用範囲を広げる話 をした。 なぜSSIかというと、これは組込みの手軽なフィルタ機構だからだ。Apache 1系統ではSSIはハンドラとして実装されているけれども、2系統では新たにフィルタ機構が加わって、SSIはこちらで再実装されている。 フィルタ機構ならmongrelからの出力にも加工できる。Pageキャッシュとキャッシュでないものを透過的に扱えてうれしい訳だ。 ただ、確かにちょっとDRYさに欠ける。どうせならRailsのレイアウトファイルにPHPコード片を直接書きたいではないか。で、これを出力するとPHPとして処理してその結果がクライアントに伝わる、と。 id:yamazさんが「 rhtmlで直接phpを吐き出して処理する方法を模索したいのです。 」と言ってるのはたぶんそういうことだ。私もそれが理想だと思う。今日はそれに挑戦してみ

    続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵