Advanced Server-side ProgrammingシリーズWebエンジニアのためのApacheモジュール プログラミングガイド
2003年8月1日紙版発売
2012年9月28日電子版発売
小山浩之 著
B5変形判/256ページ
定価3,058円(本体2,780円+税10%)
ISBN 4-7741-1799-4
ただいま弊社在庫はございません。
書籍の概要
この本の概要
Apacheは,モジュールによって簡単に機能拡張が出来,既存のCGIなどでは得られない自由度やパフォーマンスを比較的容易に達成することができます。本書は,Apacheが用意している豊富なモジュールAPIを活用して,Apacheモジュールを簡単に開発するためのガイドブックです。
こんな方におすすめ
- Webエンジニア
- CGIやサーブレット等のパフォーマンスに満足できない方
目次
第1章 イントロダクション
- 1.1 Apacheのモジュールアーキテクチャ
- 1.2 Apacheのライフサイクル
- ・リクエスト処理ループ
- 1.3 Apacheモジュールでできること
- 1.4 Apacheモジュールを作るメリット
- ・もっとも軽量で高速
- ・高度なAPIとリソースプール
- 1.5 まとめ
第2章 Hello World!
- 2.1 環境の準備
- ・Cコンパイラとプログラミングツール
- ・Apache HTTP Server
- 2.2 はじめてのモジュール
- ・ひな形の作成
- 2.3 静的な組み込み
- ・モジュールの動作確認
- 2.4 動的な組み込み
- ・モジュールのビルドとインストール
- ・モジュールの動作確認
- 2.5 静的か動的か
- 2.6 デバッグ
- ・DSOモジュールのデバッグ
- 2.7 まとめ
第3章 Apacheが提供する機能
- 3.1 リソースプール
- ・ファイル操作
- ・既存のファイルハンドルをプールに結びつける
- ・動的に確保するメモリ
- 3.2 文字列処理
- ・コピー
- ・結合
- ・分割
- ・整形
- ・変換
- 3.3 日付処理
- 3.4 正規表現
- 3.5 汎用データ構造
- 3.6 まとめ
第4章 コンテンツハンドラ
- 4.1 コンテンツハンドラとは?
- 4.2 コンテンツハンドラモジュールの作成
- ・コンテンツハンドラの構造
- 4.3 コンテンツの生成と応答
- ・レスポンスヘッダの送信
- ・メソッドの判定と応答
- ・コンテンツの送信
- ・応答ステータス
- 4.4 リクエスト情報の取得
- 4.5 パラメータの解析
- ・GETメソッド
- ・POSTメソッド
- 4.6 リダイレクト
- ・外部リダイレクト
- ・内部リダイレクト
- 4.7 まとめ
第5章 設定ファイルのカスタマイズ
- 5.1 コンフィグレーションAPI
- ・入力エラーの通知
- ・ディレクティブの構文を設定する
- ・ディレクティブの利用範囲を設定する
- ・汎用設定関数を利用する
- 5.2 設定のマージ処理
- 5.3 まとめ
第6章 その他のリクエストフェーズ
- 6.1 Apacheのリクエスト処理の流れ
- ・リクエスト読み込み後の後処理(ap_run_post_read_request)
- ・URIから実ファイルへの変換(ap_translate_name)
- ・リクエストヘッダの解析(ap_header_parse)
- ・アクセス制御
- ・コンテンツタイプの決定(ap_find_types)
- ・コンテンツ生成直前の微調整(ap_run_fixups)
- ・コンテンツの出力(ap_invoke_handler)
- ・ログの出力(ap_log_transaction)
- 6.2 まとめ
第7章 コンテンツハンドラ応用
- 7.1 トラフィックの最適化
- ・条件リクエスト
- ・条件リクエストの実装
- ・条件リクエストのまとめ
- 7.2 RDBMSの利用
- ・MySQLとの通信
- ・RDBMSの利用のまとめ
- 7.3 プラグインによるモジュールの拡張
- ・プラグインの実現方法
- ・プラグインを使用するApacheモジュールの実例
- ・プラグインのまとめ
第8章 セキュリティ
- 8.1 入力の検査
- ・Apacheのリソース制限機能
- ・クロスサイトスクリプティング対策
- 8.2 バッファオーバーフローの回避
- ・使用してはいけない関数
- 8.3 暗号とメッセージ認証アルゴリズムによるデータの保護
- ・暗号ライブラリとしてのOpenSSL
- ・対称鍵暗号による暗号化
- ・メッセージ認証アルゴリズムによる一貫性の確認
- 8.4 まとめ
第9章 Apaache 2.0.xにおけるモジュールの開発
- 9.1 Apache 2.0.xの変更点
- 9.2 モジュールの開発/組み込み手順
- ・ひな形の作成
- ・静的な組み込み
- ・動的な組み込み
- ・モジュールの動作確認
- 9.3 APIの変化
- ・ハンドラの登録
- ・データ型
- ・関数
- ・ディレクティブの定義
- 9.4 スレッドセーフ
- 9.5 まとめ