SlideShare une entreprise Scribd logo
1  sur  21
Web サ バ勉 会ー 強
表 料発 資
自己 介紹
• id:oranie  
• @oranie
• 谷の 色のグル プ会社で、グル プ内でも余り知ら渋 緑 ー ー
れていないシステムでなんか色々やる なお仕事して簡単
います。
• 色のみんながよく知っているサ ビスの とかは全緑 ー 裏側
く知らないですw
担当 :範囲 42-59 行→ module み み(読 込 2 )
• LoadModule logio_module modules/mod_logio.so
• LoadModule env_module modules/mod_env.so
• LoadModule ext_filter_module modules/mod_ext_filter.so
• LoadModule mime_magic_module modules/mod_mime_magic.so
• LoadModule expires_module modules/mod_expires.so
• LoadModule deflate_module modules/mod_deflate.so
• LoadModule headers_module modules/mod_headers.so
• LoadModule usertrack_module modules/mod_usertrack.so
• LoadModule setenvif_module modules/mod_setenvif.so
• LoadModule mime_module modules/mod_mime.so
• LoadModule dav_module modules/mod_dav.so
• LoadModule status_module modules/mod_status.so
• LoadModule autoindex_module modules/mod_autoindex.so
• LoadModule info_module modules/mod_info.so
• LoadModule dav_fs_module modules/mod_dav_fs.so
• LoadModule vhost_alias_module modules/mod_vhost_alias.so
• LoadModule negotiation_module modules/mod_negotiation.so
• LoadModule dir_module modules/mod_dir.so
ここだけでも一杯ですね!!! ><
以降は み んでいるモジュ ルの な 明です。読 込 ー 簡単 説
42 行目: LoadModule logio_module
modules/mod_logio.so
リクエスト に入力バイト数と出力バイト数とをロギング出来るモジュ ル毎 ー
される数字はリクエストのヘッダとレスポンスの本体を 反映した、 に記録 実際
ネットワ クで受け取ったバイト 。ー 値
入力では SSL/TLS  の前に、出力では SSL/TLS  の後に数えるので、
数字は暗号による 化も正しく反映したものになる。変
ログフォ マットにー %I と %O を追加。
%...I  リクエストとヘッダを含む、受け取ったバイト数。 0  にはならない。
%...O  ヘッダを含む、送信したバイト数。 0  にはならない。
このモジュ ルの使用にはー mod_log_config  モジュ ルが 必要。ー
43 行目: LoadModule env_module
modules/mod_env.so
CGI  スクリプト及び SSI  ペ ジに渡される 境 数をー 環 変 変
更する 能を提供するモジュ ル。機 ー
下 の な 定が使える。記 様 設
境 数を渡す。環 変
PassEnv LD_LIBRARY_PATH 
境 定を 定環 設 設
SetEnv SPECIAL_PATH /foo/bin 
境 数を削除環 変
UnsetEnv LD_LIBRARY_PATH 
44 行目: LoadModule ext_filter_module
modules/mod_ext_filter.so
レスポンスのボディをクライアントに送る前に外部プログラムで 理するモジュ ル。処 ー
欠点: Apache API  向けに かれた書 Apache  サ バプロセス内で 行される 用のフィルタよりもー 実 専
ずっと い遅
でも以下の利点が。
*  ずっとシンプルなプログラミングモデル
*  プログラムが 入力から んで 出力に くものである限り、 どんなプログラム言 やスク標準 読 標準 書 語
リプト言 でも使うことができる語
*  既存のプログラムを 更することなく変 Apache  のフィルタとして 使うことができる
sed  を使って 答中のテキストを置 する応 換
ExtFilterDefine fixtext mode=output intype=text/html 
cmd="/bin/sed s/verdana/arial/g"
<Location />
SetOutputFilter fixtext
</Location> 
すぎて 用では しくても、フィルタのプロトタイプ用の 境としては遅 実運 厳 環 mod_ext_filter は有効
45 行目: LoadModule mime_magic_module
modules/mod_mime_magic.so
mod_mime (サ バ でファイル名からファイル タイプを判断し、 理用のハンドラに 付けできます。 )で分からなー ー ・ 処 関連
い に、時
Unix file(1) コマンドがする同じ方法の、そのコンテンツの 2 、 3 バイトを ることによって、見
ファイルの MIME タイプを 定するために使われます。決
→ コンテンツが何であるかを 分けるために、ファイルのコンテンツから見 "magic numbers" とその他のヒントを使う
# Frame
0 string <MakerFile application/x-frame
0 string <MIFFile application/x-frame
0 string <MakerDictionary application/x-frame
0 string <MakerScreenFon application/x-frame
0 string <MML application/x-frame
0 string <Book application/x-frame
0 string <Maker application/x-frame
# MS-Word
0 string 3760670043 application/msword
0 string 320317021340241261 application/msword
0 string 333245-000 application/msword
46 行目: LoadModule expires_module
modules/mod_expires.so
ユ ザの指定した基 に基づいたー 準 Expires と Cache-Control
HTTP ヘッダの生成
このモジュ ルはサ バ 答のー ー 応 Expires HTTP ヘッダ と Cache-
Control ヘッダの max-age ディレクティブの 定を制御します。設
元のファイルが作成された 刻または クライアントのアクセス時 時
刻のどちらかに基づいて期限切れ日を 定することができます。設
ExpiresByType text/html "access plus 1 month 15 days 2 hours"
ExpiresByType image/gif "modification plus 5 hours 3 minutes"
47 行目: LoadModule deflate_module
modules/mod_deflate.so
DEFLATE 出力フィルタを提供します。これはサ バからー
の出力を、ネットワ クを 通してクライアントに送る前にー
することを可能にします。圧縮
コンテンツを gzip とかで することで 域を 出来ま圧縮 帯 節約
す。
な 定例。簡単 設
数タイプのみ する圧縮
AddOutputFilterByType DEFLATE text/html text/plain
text/xml
48 行目: LoadModule headers_module
modules/mod_headers.so
このモジュ ルはー HTTP のリクエストヘッダと 答ヘッダを制御し、応
更するためのディレクティブを提供します。ヘッダを追加したり、 置変
き えたり、削除したりすることができます。換
リクエストを受け付けた 刻とリクエストを 理した を入れたヘッ時 処 時間
ダ、 MyHeader を 答に追加します。このヘッダはクライアントが サ応
バの 荷を直 的に知るためや、クライアントー 負 観 - サ バ の ボトルネー 間
ックを べるために使うことができます。調
Header add MyHeader "%D %t"
上 の 定では、以下のようなヘッダが 答に追加されることになりま記 設 応
す :
MyHeader: D=3775428 t=991424704447256
49 行目: LoadModule usertrack_module
modules/mod_usertrack.so
クッキ を自 的に埋め むことができます。ー 動 込
CustomLog ディレクティブにログに取る情 を追加します。報
"%{cookie}i" - サ バが受け取ったクッキ のー ー 値
"%{Set-cookie}o" - サ バがセットしたクッキ のー ー 値
CustomLog logs/clickstream "%h %l %u %t "%r" %>s %b "%
{Referer}i" "%{User-Agent}i" "%{cookie}i" "%{Set-cookie}o""
***.***.***.*** - - [24/Dec/2004:16:44:23 +0900] "GET / HTTP/1.0"
304 - "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;
SV1)" "Apache=210.143.35.15.25121105725090102" "-"
50 行目: LoadModule setenvif_module
modules/mod_setenvif.so
• リクエストの特 に基づいた 境 数の 定を可能にす徴 環 変 設
る。
• 212-223 行目に かい 定が っているのでそっちで細 設 載 ・
w・・
51 行目: LoadModule mime_module
modules/mod_mime.so
• リクエストされたファイルの 子とファイルの振る舞拡張
い ( ハンドラとフィルタ ) 、内容 (MIME タイプ、言語
、文字セット、エンコ ディングー ) とを 付ける。関連
• 他の行で 定されているので はそちらで w設 詳細 ・・・
52 行目: LoadModule dav_module
modules/mod_dav.so
• 分散オ サリングとバ ジョン管理ー ー (WebDAV) 能機
• このモジュ ルはクラスー 1 とクラス 2 の WebDAV
(' ウェブベ スの分散オ サリングとバ ジョン管理ー ー ー ')
能を機 Apache に提供します。 この HTTP プロトコ
ルの により、リモ トのウェブサ バ上にある リ拡張 ー ー
ソ スやコレクションを 作成、移 、 、削除できー 動 複製
るようになります。
• 要は Apache を利用してサ バ上のファイル等が操作出ー
来るように。
• 123-125 行で 定されt(詳細設 ry w
53 行目: LoadModule status_module
modules/mod_status.so
サ バの活 状 と性能に する情 を提供するー 動 況 関 報
インフラエンジニアならみんな使っているよね!
表示される情 は報 :
* リクエストを っているワ カ の数扱 ー ー
* アイドル ( 注訳 : リクエストを っていない扱 ) ワ カ の数ー ー
* 各ワ カ の状 、ワ カ が ったリクエストの数、 ワ カ が送ったー ー 態 ー ー 扱 ー ー 総
バイト数
* アクセス数と バイト数総 総
* サ バが起 もしくは再起 された 刻と 作しているー 動 動 時 動 時間
* 平均の 1 秒あたりのリクエスト数、 1 秒あたりの送られたバイト数、 リク
エストあたりのバイト数
* 各ワ カ とー ー Apache 全体で使用されている CPU の割合
• 点のホストと 理されているリクエスト現時 処
54 行目: LoadModule autoindex_module
modules/mod_autoindex.so
• Unix の ls コマンドや Win32 の dir シェルコマンド
に似た ディレクトリインデックスを生成する
• 要はディレクトリに するリクエストする→そのディレ対
クトリ内のリ スが一 で れる。ー 覧 見
• 用では大体切っていると思いますw実運
• 普段 たり使うのはレポジトリぐらい?見
55 行目: LoadModule info_module
modules/mod_info.so
• サ バの 定の包括的な概 を提供するー 設 観
o Config 定とか設
• Apache 版 phpinfo みたいな物
•
• 多分、危ないので 用では切る物ですね!!実運
56 行目: LoadModule dav_fs_module
modules/mod_dav_fs.so
mod_dav のためのファイルシステムプロバイダ モジュ・ ー
ル。
mod_dav のサ ビスを必要とします。ー mod_dav のサポー
トモジュ ルとして 作し、サ バファイルシステム上にー 動 ー
位置するリソ スへのアクセスを提供する。ー
多分、 mod_dav がリクエストの解 行→本モジュ ル釈・実 ー
が のファイルシステムにアクセス→内容を実際 mod_dav に
返すという感じ?
57 行目: LoadModule vhost_alias_module
modules/mod_vhost_alias.so
サブドメインとかフォ スレベルドメインが 的に 定できる。ー 動 設
VirtualDocumentRoot /home/%2/svn_work/%1/httpd
VirtualScriptAlias /home/%2/svn_work/%1/cgi-bin
と 定することで設
http://hogehoge.fugafuga.example.com/
にアクセスすると
/home/fugafuga/svn_work/hogehoge/httpd
がドキュメントル トになる。ー
新たにサイトを やす にはディレクトリを作成して増 際 DNS を 定すれば設
完了。
58 行目: LoadModule negotiation_module
modules/mod_negotiation.so
• 数用意されているドキュメントから、クライアントの複
能力に一番合った ドキュメントを する 能選択 機
• * タイプマップ (type-map ハンドラで われるファイ扱
ル ) 。これは variants を含んでいるファイルを明示的
に指定します。
• * MultiViews の探索 (MultiViews Option で有 になり効
ます ) 。 サ バが暗 の内にファイル名のパタ ンマッー 黙 ー
チを行ない、 その 果から します。結 選択
59 行目: LoadModule dir_module
modules/mod_dir.so
• 「最後のスラッシュ」のリダイレクトと、ディレクトリ
のインデックスファイルを う 能を提供する扱 機
• 例:
• http://example.com へのアクセス→ http://example.com/
にリダイレクト
• http://example.com/ へのアクセス→ / に 定したリソ設 ー
ス( index.html など)があればそれを表示、
• ければディレクトリリストを表示無
• mod_autoindex.so と めて 作を指定する に使える。絡 動 時

Contenu connexe

Tendances

Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218akirahiguchi
 
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティングMTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング純生 野田
 
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQLHandlerSocket plugin for MySQL
HandlerSocket plugin for MySQLakirahiguchi
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会tama200x Kobayashi
 
スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門Hisashi HATAKEYAMA
 
PHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことPHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことKentaro Matsui
 
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3infinite_loop
 
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなしMasahiro NAKAYAMA
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)Takanori Sejima
 
Mod lua
Mod luaMod lua
Mod luado_aki
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)Yuuki Namikawa
 
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理Seiichiro Ishida
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなしOonishi Takaaki
 
MHAの次を目指す mikasafabric for MySQL
MHAの次を目指す mikasafabric for MySQLMHAの次を目指す mikasafabric for MySQL
MHAの次を目指す mikasafabric for MySQLyoku0825
 
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズAmazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズSORACOM, INC
 
Thunderbird 3のご紹介と企業に求められるカスタマイズ
Thunderbird 3のご紹介と企業に求められるカスタマイズThunderbird 3のご紹介と企業に求められるカスタマイズ
Thunderbird 3のご紹介と企業に求められるカスタマイズMakoto Kato
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術yoku0825
 
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5Naoya Nakazawa
 

Tendances (20)

Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218
 
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティングMTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
MTのダイナミック処理(PHP)を高速化する@サーバーサイドスクリプティング
 
HandlerSocket plugin for MySQL
HandlerSocket plugin for MySQLHandlerSocket plugin for MySQL
HandlerSocket plugin for MySQL
 
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
2012/6/10 Webのパフォーマンスを考える @ 【第三回】初心者向けホームページ勉強会
 
スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門
 
PHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことPHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったこと
 
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3
Dbtechshowcasesapporo mysql-turing-for-cloud-0.9.3
 
WindowsでMySQL入門
WindowsでMySQL入門WindowsでMySQL入門
WindowsでMySQL入門
 
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし20140828 #ssmjp 社内チューニンガソンで優勝したはなし
20140828 #ssmjp 社内チューニンガソンで優勝したはなし
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)
 
Mod lua
Mod luaMod lua
Mod lua
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (後編)
 
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
第1回Webサーバ勉強会 - 212-223 ブラウザマッチ処理
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
 
MySQLの冗長化 2013-01-24
MySQLの冗長化 2013-01-24MySQLの冗長化 2013-01-24
MySQLの冗長化 2013-01-24
 
MHAの次を目指す mikasafabric for MySQL
MHAの次を目指す mikasafabric for MySQLMHAの次を目指す mikasafabric for MySQL
MHAの次を目指す mikasafabric for MySQL
 
Amazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズAmazon ElastiCache - AWSマイスターシリーズ
Amazon ElastiCache - AWSマイスターシリーズ
 
Thunderbird 3のご紹介と企業に求められるカスタマイズ
Thunderbird 3のご紹介と企業に求められるカスタマイズThunderbird 3のご紹介と企業に求められるカスタマイズ
Thunderbird 3のご紹介と企業に求められるカスタマイズ
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術
 
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5
 

Similaire à Webサーバ勉強会 発表資料

20141101 handson
20141101 handson20141101 handson
20141101 handsonSix Apart
 
CodeIgniter入門
CodeIgniter入門CodeIgniter入門
CodeIgniter入門Sho A
 
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップYasuhito Yabe
 
第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版Ryosuke MATSUMOTO
 
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
第2回 松本勉強会 2012 05 25 - apache2.4とmod_luaRyosuke MATSUMOTO
 
20141206 handson
20141206 handson20141206 handson
20141206 handsonSix Apart
 
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発Hironao Sekine
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうDevTakas
 
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterMasanori Oobayashi
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Kazumi IWANAGA
 
JiraとConfluenceのTips集
JiraとConfluenceのTips集JiraとConfluenceのTips集
JiraとConfluenceのTips集Hiroshi Ohnuki
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624Yusuke Suzuki
 
Webサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてWebサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてyut148atgmaildotcom
 
Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセスMakoto Kato
 
20141119 Movable Type HandsOn Seminar
20141119 Movable Type HandsOn Seminar20141119 Movable Type HandsOn Seminar
20141119 Movable Type HandsOn SeminarSix Apart
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッションYuichi Hasegawa
 
簡単なHTTPサーバの作成
簡単なHTTPサーバの作成簡単なHTTPサーバの作成
簡単なHTTPサーバの作成Panu Avakul
 

Similaire à Webサーバ勉強会 発表資料 (20)

20141101 handson
20141101 handson20141101 handson
20141101 handson
 
CodeIgniter入門
CodeIgniter入門CodeIgniter入門
CodeIgniter入門
 
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
 
第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版
 
web server
web serverweb server
web server
 
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
 
20141206 handson
20141206 handson20141206 handson
20141206 handson
 
Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発Sflt17 meteorではじめる最速ウェブアプリ開発
Sflt17 meteorではじめる最速ウェブアプリ開発
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
 
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
JiraとConfluenceのTips集
JiraとConfluenceのTips集JiraとConfluenceのTips集
JiraとConfluenceのTips集
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624
 
Webサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてWebサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについて
 
Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセス
 
20080524
2008052420080524
20080524
 
20141119 Movable Type HandsOn Seminar
20141119 Movable Type HandsOn Seminar20141119 Movable Type HandsOn Seminar
20141119 Movable Type HandsOn Seminar
 
PHP勉強会 #51
PHP勉強会 #51PHP勉強会 #51
PHP勉強会 #51
 
Jjug springセッション
Jjug springセッションJjug springセッション
Jjug springセッション
 
簡単なHTTPサーバの作成
簡単なHTTPサーバの作成簡単なHTTPサーバの作成
簡単なHTTPサーバの作成
 

Plus de oranie Narut

Devsumi2019 dynamodb
Devsumi2019 dynamodbDevsumi2019 dynamodb
Devsumi2019 dynamodboranie Narut
 
Jvm operation casual talks
Jvm operation casual talksJvm operation casual talks
Jvm operation casual talksoranie Narut
 
cassandra 100 node cluster admin operation
cassandra 100 node cluster admin operationcassandra 100 node cluster admin operation
cassandra 100 node cluster admin operationoranie Narut
 
Webサーバ勉強会#5
Webサーバ勉強会#5Webサーバ勉強会#5
Webサーバ勉強会#5oranie Narut
 
Webサーバ勉強会#4
Webサーバ勉強会#4Webサーバ勉強会#4
Webサーバ勉強会#4oranie Narut
 
MySQL Casual LT : MySQL Upgrade 5.0 to 5.5
MySQL Casual LT  : MySQL Upgrade  5.0 to 5.5 MySQL Casual LT  : MySQL Upgrade  5.0 to 5.5
MySQL Casual LT : MySQL Upgrade 5.0 to 5.5 oranie Narut
 
財務分析勉強会挨拶
財務分析勉強会挨拶財務分析勉強会挨拶
財務分析勉強会挨拶oranie Narut
 
Webサーバ勉強会02
Webサーバ勉強会02 Webサーバ勉強会02
Webサーバ勉強会02 oranie Narut
 
It勉強会の勉強会
It勉強会の勉強会It勉強会の勉強会
It勉強会の勉強会oranie Narut
 

Plus de oranie Narut (10)

Devsumi2019 dynamodb
Devsumi2019 dynamodbDevsumi2019 dynamodb
Devsumi2019 dynamodb
 
Jvm operation casual talks
Jvm operation casual talksJvm operation casual talks
Jvm operation casual talks
 
cassandra 100 node cluster admin operation
cassandra 100 node cluster admin operationcassandra 100 node cluster admin operation
cassandra 100 node cluster admin operation
 
Fluentd casual
Fluentd casualFluentd casual
Fluentd casual
 
Webサーバ勉強会#5
Webサーバ勉強会#5Webサーバ勉強会#5
Webサーバ勉強会#5
 
Webサーバ勉強会#4
Webサーバ勉強会#4Webサーバ勉強会#4
Webサーバ勉強会#4
 
MySQL Casual LT : MySQL Upgrade 5.0 to 5.5
MySQL Casual LT  : MySQL Upgrade  5.0 to 5.5 MySQL Casual LT  : MySQL Upgrade  5.0 to 5.5
MySQL Casual LT : MySQL Upgrade 5.0 to 5.5
 
財務分析勉強会挨拶
財務分析勉強会挨拶財務分析勉強会挨拶
財務分析勉強会挨拶
 
Webサーバ勉強会02
Webサーバ勉強会02 Webサーバ勉強会02
Webサーバ勉強会02
 
It勉強会の勉強会
It勉強会の勉強会It勉強会の勉強会
It勉強会の勉強会
 

Dernier

PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Dernier (9)

PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

Webサーバ勉強会 発表資料

  • 1. Web サ バ勉 会ー 強 表 料発 資
  • 2. 自己 介紹 • id:oranie   • @oranie • 谷の 色のグル プ会社で、グル プ内でも余り知ら渋 緑 ー ー れていないシステムでなんか色々やる なお仕事して簡単 います。 • 色のみんながよく知っているサ ビスの とかは全緑 ー 裏側 く知らないですw
  • 3. 担当 :範囲 42-59 行→ module み み(読 込 2 ) • LoadModule logio_module modules/mod_logio.so • LoadModule env_module modules/mod_env.so • LoadModule ext_filter_module modules/mod_ext_filter.so • LoadModule mime_magic_module modules/mod_mime_magic.so • LoadModule expires_module modules/mod_expires.so • LoadModule deflate_module modules/mod_deflate.so • LoadModule headers_module modules/mod_headers.so • LoadModule usertrack_module modules/mod_usertrack.so • LoadModule setenvif_module modules/mod_setenvif.so • LoadModule mime_module modules/mod_mime.so • LoadModule dav_module modules/mod_dav.so • LoadModule status_module modules/mod_status.so • LoadModule autoindex_module modules/mod_autoindex.so • LoadModule info_module modules/mod_info.so • LoadModule dav_fs_module modules/mod_dav_fs.so • LoadModule vhost_alias_module modules/mod_vhost_alias.so • LoadModule negotiation_module modules/mod_negotiation.so • LoadModule dir_module modules/mod_dir.so ここだけでも一杯ですね!!! >< 以降は み んでいるモジュ ルの な 明です。読 込 ー 簡単 説
  • 4. 42 行目: LoadModule logio_module modules/mod_logio.so リクエスト に入力バイト数と出力バイト数とをロギング出来るモジュ ル毎 ー される数字はリクエストのヘッダとレスポンスの本体を 反映した、 に記録 実際 ネットワ クで受け取ったバイト 。ー 値 入力では SSL/TLS  の前に、出力では SSL/TLS  の後に数えるので、 数字は暗号による 化も正しく反映したものになる。変 ログフォ マットにー %I と %O を追加。 %...I  リクエストとヘッダを含む、受け取ったバイト数。 0  にはならない。 %...O  ヘッダを含む、送信したバイト数。 0  にはならない。 このモジュ ルの使用にはー mod_log_config  モジュ ルが 必要。ー
  • 5. 43 行目: LoadModule env_module modules/mod_env.so CGI  スクリプト及び SSI  ペ ジに渡される 境 数をー 環 変 変 更する 能を提供するモジュ ル。機 ー 下 の な 定が使える。記 様 設 境 数を渡す。環 変 PassEnv LD_LIBRARY_PATH  境 定を 定環 設 設 SetEnv SPECIAL_PATH /foo/bin  境 数を削除環 変 UnsetEnv LD_LIBRARY_PATH 
  • 6. 44 行目: LoadModule ext_filter_module modules/mod_ext_filter.so レスポンスのボディをクライアントに送る前に外部プログラムで 理するモジュ ル。処 ー 欠点: Apache API  向けに かれた書 Apache  サ バプロセス内で 行される 用のフィルタよりもー 実 専 ずっと い遅 でも以下の利点が。 *  ずっとシンプルなプログラミングモデル *  プログラムが 入力から んで 出力に くものである限り、 どんなプログラム言 やスク標準 読 標準 書 語 リプト言 でも使うことができる語 *  既存のプログラムを 更することなく変 Apache  のフィルタとして 使うことができる sed  を使って 答中のテキストを置 する応 換 ExtFilterDefine fixtext mode=output intype=text/html  cmd="/bin/sed s/verdana/arial/g" <Location /> SetOutputFilter fixtext </Location>  すぎて 用では しくても、フィルタのプロトタイプ用の 境としては遅 実運 厳 環 mod_ext_filter は有効
  • 7. 45 行目: LoadModule mime_magic_module modules/mod_mime_magic.so mod_mime (サ バ でファイル名からファイル タイプを判断し、 理用のハンドラに 付けできます。 )で分からなー ー ・ 処 関連 い に、時 Unix file(1) コマンドがする同じ方法の、そのコンテンツの 2 、 3 バイトを ることによって、見 ファイルの MIME タイプを 定するために使われます。決 → コンテンツが何であるかを 分けるために、ファイルのコンテンツから見 "magic numbers" とその他のヒントを使う # Frame 0 string <MakerFile application/x-frame 0 string <MIFFile application/x-frame 0 string <MakerDictionary application/x-frame 0 string <MakerScreenFon application/x-frame 0 string <MML application/x-frame 0 string <Book application/x-frame 0 string <Maker application/x-frame # MS-Word 0 string 3760670043 application/msword 0 string 320317021340241261 application/msword 0 string 333245-000 application/msword
  • 8. 46 行目: LoadModule expires_module modules/mod_expires.so ユ ザの指定した基 に基づいたー 準 Expires と Cache-Control HTTP ヘッダの生成 このモジュ ルはサ バ 答のー ー 応 Expires HTTP ヘッダ と Cache- Control ヘッダの max-age ディレクティブの 定を制御します。設 元のファイルが作成された 刻または クライアントのアクセス時 時 刻のどちらかに基づいて期限切れ日を 定することができます。設 ExpiresByType text/html "access plus 1 month 15 days 2 hours" ExpiresByType image/gif "modification plus 5 hours 3 minutes"
  • 9. 47 行目: LoadModule deflate_module modules/mod_deflate.so DEFLATE 出力フィルタを提供します。これはサ バからー の出力を、ネットワ クを 通してクライアントに送る前にー することを可能にします。圧縮 コンテンツを gzip とかで することで 域を 出来ま圧縮 帯 節約 す。 な 定例。簡単 設 数タイプのみ する圧縮 AddOutputFilterByType DEFLATE text/html text/plain text/xml
  • 10. 48 行目: LoadModule headers_module modules/mod_headers.so このモジュ ルはー HTTP のリクエストヘッダと 答ヘッダを制御し、応 更するためのディレクティブを提供します。ヘッダを追加したり、 置変 き えたり、削除したりすることができます。換 リクエストを受け付けた 刻とリクエストを 理した を入れたヘッ時 処 時間 ダ、 MyHeader を 答に追加します。このヘッダはクライアントが サ応 バの 荷を直 的に知るためや、クライアントー 負 観 - サ バ の ボトルネー 間 ックを べるために使うことができます。調 Header add MyHeader "%D %t" 上 の 定では、以下のようなヘッダが 答に追加されることになりま記 設 応 す : MyHeader: D=3775428 t=991424704447256
  • 11. 49 行目: LoadModule usertrack_module modules/mod_usertrack.so クッキ を自 的に埋め むことができます。ー 動 込 CustomLog ディレクティブにログに取る情 を追加します。報 "%{cookie}i" - サ バが受け取ったクッキ のー ー 値 "%{Set-cookie}o" - サ バがセットしたクッキ のー ー 値 CustomLog logs/clickstream "%h %l %u %t "%r" %>s %b "% {Referer}i" "%{User-Agent}i" "%{cookie}i" "%{Set-cookie}o"" ***.***.***.*** - - [24/Dec/2004:16:44:23 +0900] "GET / HTTP/1.0" 304 - "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" "Apache=210.143.35.15.25121105725090102" "-"
  • 12. 50 行目: LoadModule setenvif_module modules/mod_setenvif.so • リクエストの特 に基づいた 境 数の 定を可能にす徴 環 変 設 る。 • 212-223 行目に かい 定が っているのでそっちで細 設 載 ・ w・・
  • 13. 51 行目: LoadModule mime_module modules/mod_mime.so • リクエストされたファイルの 子とファイルの振る舞拡張 い ( ハンドラとフィルタ ) 、内容 (MIME タイプ、言語 、文字セット、エンコ ディングー ) とを 付ける。関連 • 他の行で 定されているので はそちらで w設 詳細 ・・・
  • 14. 52 行目: LoadModule dav_module modules/mod_dav.so • 分散オ サリングとバ ジョン管理ー ー (WebDAV) 能機 • このモジュ ルはクラスー 1 とクラス 2 の WebDAV (' ウェブベ スの分散オ サリングとバ ジョン管理ー ー ー ') 能を機 Apache に提供します。 この HTTP プロトコ ルの により、リモ トのウェブサ バ上にある リ拡張 ー ー ソ スやコレクションを 作成、移 、 、削除できー 動 複製 るようになります。 • 要は Apache を利用してサ バ上のファイル等が操作出ー 来るように。 • 123-125 行で 定されt(詳細設 ry w
  • 15. 53 行目: LoadModule status_module modules/mod_status.so サ バの活 状 と性能に する情 を提供するー 動 況 関 報 インフラエンジニアならみんな使っているよね! 表示される情 は報 : * リクエストを っているワ カ の数扱 ー ー * アイドル ( 注訳 : リクエストを っていない扱 ) ワ カ の数ー ー * 各ワ カ の状 、ワ カ が ったリクエストの数、 ワ カ が送ったー ー 態 ー ー 扱 ー ー 総 バイト数 * アクセス数と バイト数総 総 * サ バが起 もしくは再起 された 刻と 作しているー 動 動 時 動 時間 * 平均の 1 秒あたりのリクエスト数、 1 秒あたりの送られたバイト数、 リク エストあたりのバイト数 * 各ワ カ とー ー Apache 全体で使用されている CPU の割合 • 点のホストと 理されているリクエスト現時 処
  • 16. 54 行目: LoadModule autoindex_module modules/mod_autoindex.so • Unix の ls コマンドや Win32 の dir シェルコマンド に似た ディレクトリインデックスを生成する • 要はディレクトリに するリクエストする→そのディレ対 クトリ内のリ スが一 で れる。ー 覧 見 • 用では大体切っていると思いますw実運 • 普段 たり使うのはレポジトリぐらい?見
  • 17. 55 行目: LoadModule info_module modules/mod_info.so • サ バの 定の包括的な概 を提供するー 設 観 o Config 定とか設 • Apache 版 phpinfo みたいな物 • • 多分、危ないので 用では切る物ですね!!実運
  • 18. 56 行目: LoadModule dav_fs_module modules/mod_dav_fs.so mod_dav のためのファイルシステムプロバイダ モジュ・ ー ル。 mod_dav のサ ビスを必要とします。ー mod_dav のサポー トモジュ ルとして 作し、サ バファイルシステム上にー 動 ー 位置するリソ スへのアクセスを提供する。ー 多分、 mod_dav がリクエストの解 行→本モジュ ル釈・実 ー が のファイルシステムにアクセス→内容を実際 mod_dav に 返すという感じ?
  • 19. 57 行目: LoadModule vhost_alias_module modules/mod_vhost_alias.so サブドメインとかフォ スレベルドメインが 的に 定できる。ー 動 設 VirtualDocumentRoot /home/%2/svn_work/%1/httpd VirtualScriptAlias /home/%2/svn_work/%1/cgi-bin と 定することで設 http://hogehoge.fugafuga.example.com/ にアクセスすると /home/fugafuga/svn_work/hogehoge/httpd がドキュメントル トになる。ー 新たにサイトを やす にはディレクトリを作成して増 際 DNS を 定すれば設 完了。
  • 20. 58 行目: LoadModule negotiation_module modules/mod_negotiation.so • 数用意されているドキュメントから、クライアントの複 能力に一番合った ドキュメントを する 能選択 機 • * タイプマップ (type-map ハンドラで われるファイ扱 ル ) 。これは variants を含んでいるファイルを明示的 に指定します。 • * MultiViews の探索 (MultiViews Option で有 になり効 ます ) 。 サ バが暗 の内にファイル名のパタ ンマッー 黙 ー チを行ない、 その 果から します。結 選択
  • 21. 59 行目: LoadModule dir_module modules/mod_dir.so • 「最後のスラッシュ」のリダイレクトと、ディレクトリ のインデックスファイルを う 能を提供する扱 機 • 例: • http://example.com へのアクセス→ http://example.com/ にリダイレクト • http://example.com/ へのアクセス→ / に 定したリソ設 ー ス( index.html など)があればそれを表示、 • ければディレクトリリストを表示無 • mod_autoindex.so と めて 作を指定する に使える。絡 動 時