marunomaruno-memo

marunomaruno-memo

できるPRO Apache Webサーバー Apache 2/1.3対応

2010年12月18日 | Weblog
できるPRO Apache Webサーバー Apache 2/1.3対応
http://www.impressjapan.jp/books/2265.php

\2,625 (本体 \2,500+税)
品種名:書籍
発売日:2006/06/15発売
ページ数:272P
サイズ・判型:B5変型判
著者:辻秀典・渡辺高志・鈴木幸敏&できるシリーズ編集部 著
ISBNコード:978-4-8443-2265-8

■第1章 Apacheをインストールしよう
1-1 Apacheってなに? <Apache HTTPサーバー>
・一番使われているWebサーバー
・バージョン2とバージョン1.3の2種類が使われている
1-2 サーバーとどう通信するの? <IPアドレス>
・IPアドレスで互いを指定する
・IPアドレスは4つの数字からなる
・グローバルIPアドレスとプライベートIPアドレス
・直接通信できるのはセグメントの中だけ
・セグメントはネットマスクで表す
1-3 IPアドレスはどう決めるの? <DHCP、NAT>
・DHCPを使えば自動で割り当てられる
・サーバーは固定でIPアドレスを指定する
・NATでLANとインターネットを中継
・ルーターがつながって世界をカバー
1-4 インストールする環境を用意しよう <必要なハードとソフト>
・必要なハードウェア
・OSと構成
・本書で使う環境
1-5 UNIX系OSにインストールするには <UNIX系OSへのインストール>
・OSで用意されたものと自分でソースからコンパイルするもの
・ソースからインストールする場合
・OSで用意されたものをインストールする場合
1-6 Windowsにインストールするには <Windowsへのインストール>
STEP UP <Apacheのバージョンを最新に保つ>

■第2章 Apacheを動かそう
2-1 URLは何を表しているの? <URLの意味>
・URLは複数の指定の集合体
・WebブラウザはURLを分解してアクセスする
2-2 ホスト名ってなに? <名前解決>
・アドレスをホスト名で指定する
・DNSで名前解決する
・ホスト名の構造
・DNSは階層構造で世界をカバーする
・ダイナミックDNS
2-3 設定ファイルを見てみよう <httpd.conf>
・テキストファイルで設定する
・設定ファイルを確認する
2-4 初期設定をしよう <サーバー自身の情報>
・エラーのときにサーバーの情報が必要
・Apache 2の場合
・Apache 1.3の場合
2-5 Apacheを起動しよう <起動と停止>
・デーモンとして動く
・ソースからインストールした場合
・OSで用意しているものをインストールした場合
・Windows版Apache 2の場合
・Windows版Apache 1.3の場合
2-6 アクセスしてみよう <リクエストとレスポンス>
・サーバーにリクエストを送る
・サーバーからレスポンスが返る
・クライアントからアクセスできるようにしてテストしよう
2-7 アクセスの記録を確認しよう <ログファイル>
・サーバーへのアクセスはログファイルに記録される
STEP UP <HTTPの通信内容の確認方法>

■第3章 ページを見せよう
3-1 設定ファイルの構造を知ろう <セクションコンテナ>
・指定の範囲を決める
・設定の優先順位
・ディレクトリ単位で指定する――
・ファイル単位で指定する――
・パス名で指定する――
・ほかの設定ファイルを読み込む――
3-2 HTMLファイルを置こう <ドキュメントルート>
・ドキュメントルート以下にコンテンツを置く
・ファイルを転送するには
3-3 文字コードの設定を変更しよう <AddDefaultCharset>
・文字コードを指定するしくみ
3-4 設定を反映しよう <Apacheの再起動>
・ソースからインストールした場合
・OSで用意されている場合
・Windows版Apache 2の場合
・Windows版Apache 1.3の場合
3-5 インデックスファイルを設定しよう <DirectoryIndex、Indexes>
・index.htmがインデックスファイルに使われない
・インデックスを設定する
3-6 ほかの場所にあるファイルを見せるには <Alias>
・ドキュメントルートの中にないファイルを見せる
3-7 データの種類を追加するには <AddType>
・データの種類はMIMEタイプで表わされる
STEP UP <正規表現を覚えよう>

■第4章 ユーザーごとに公開ディレクトリを作ろう
4-1 ユーザーごとの公開ディレクトリを用意しよう <ユーザーディレクトリ>
・ユーザーごとのディレクトリを公開できる
・ユーザーディレクトリの設定を確認する
・ユーザーディレクトリを作る(UNIX系OSの場合)
・ユーザーディレクトリを作る(Windows版Apache 2の場合)
・ユーザーディレクトリを作る(Windows版Apache 1.3の場合)
・ユーザーデレクトリにアクセスする
・ユーザーごとに許可や禁止をするには
4-2 ディレクトリごとの設定ファイルを使うには <.htaccess>
4-3 複数のサーバーに見せるには <仮想ホスト>
・1台のサーバーに複数のホスト名をつける
・名前ベースの仮想ホスト
・IPベースの仮想ホスト
・仮想ホストを設定する
・仮想ホストにアクセスする
4-4 仮想ホストに別名をつけるには <ServerAlias>
・IPベースの仮想ホストに元のホスト名をつけるには
4-5 ホスト名を指定しないブラウザに対応するには <ServerPathによる仮想ホストの識別>
・パス名で仮想ホストを判断
STEP UP <Webブラウザのキャッシュを制御する>

■第5章 アクセスを制御しよう
5-1 アクセス元を制限するには <アクセス制限>
・アクセス元に対して禁止や許可を設定する
・特定のアクセス元に対してアクセスを禁止する
・特定のアクセス元にだけアクセスを許可する
・アクセス元の指定方法
5-2 Webブラウザの種類を制限するには <Apacheの環境変数>
・リクエストのメッセージヘッダーを見て値を設定する
5-3 リンクを制限するには <リファラー>
・リンク元の情報もサーバーに送られる
5-4 エラーメッセージを変更するには <ステータスコード>
・レスポンスにはステータスコードが付く
5-5 パスワードをかけるには <基本認証>
・登録ユーザーだけアクセスさせる
・認証のしくみ
・パスワードを指定する
5-6 認証してグループ単位で許可するには <ユーザーグループ>
5-7 アクセス制限と認証を組み合わせるには <Satisfy>
・両方の条件に合ったときだけ許可する場合
・どちらかの条件に合えば許可する場合
5-8 URLが変更になったときは <リダイレクト>
・変更先のURLを返す
・一時的にリダイレクトする場合
・引っ越しのためリダイレクトする場合
・URLのパターンでリダイレクトする場合
5-9 ページの言語を自動で切り替えるには <コンテントネゴシエーション>
・言語や文字コードの情報もサーバーに送られる
・品質値で優先度を指定する
・言語や文字コードを自動で切り替える
・言語を切り替える
・文字コードを切り替える
5-10 サーバーの種類を隠すには <ServerTokens、ServerSignature>
・レスポンスにサーバーの情報が入っている
・サーバーが作るページに表示される情報
STEP UP <Apacheで使える認証方法>

■第6章 CGIを使おう
6-1 CGIってなに? <CGIの概要>
・Apacheを通してプログラムを実行するしくみ
・Perlなどでプログラムを作る
・セキュリティに気をつけよう
6-2 CGIを使えるようにするには <ScriptAlias、AddHandler>
・プログラムはダウンロードできない場所に置く
6-3 CGIを使ってみよう <CGIのスクリプト>
6-4 ユーザーディレクトリでCGIを使うには <ScriptAliasMatch>
6-5 状況に応じて動作させるには <環境変数の利用>
6-6 クライアントからデータを受け取るには <GETとPOST>
・Webブラウザからデータを送る
・GETメソッドとPOSTメソッド
・CGIでデータを受け取る
6-7 クライアントにデータを覚えさせるには <Cookie>
・メッセージヘッダーに値を付けて返す
・CGIでCookieを使う
6-8 CGIでページにフィルタをかけるには <ActionによるCGIの呼び出し>
6-9 エラーになったCGIの通信を確認するには <ScriptLog>
STEP UP <Perl以外のスクリプト言語>

■第7章 SSIを使おう
7-1 SSIを使えるようにするには <AddOutputFilter>
・ページの一部の内容を入れ替える
7-2 ファイルやコマンドの出力を組み込むには <include、exec>
・ファイルの内容を組み込む――include file=
・コマンドの出力を組み込む――exec cmd=
・CGIの出力を組み込む――exec cgi=
・URLで指定した先を組み込む――include virtual=
7-3 値を表示するには <echo、config、if>
・値を表示するには――echo
・日時の表示を変えるには――config
・ファイルの情報を表示するには――fsize
・条件で表示を変えるには
7-4 実行権限でSSIを指定するには <XBitHack>
STEP UP <Web画面での操作を快適にするAjax>

■第8章 モジュールで拡張しよう
8-1 モジュールってなに? <Apacheのモジュール>
・モジュールで機能を追加できる
・モジュールの追加方法は2種類ある
・組み込まれているモジュールを調べる
8-2 モジュールを追加するには <モジュールの追加とコンパイル>
・組み込みのモジュールを指定する場合
・DSOのモジュールをダウンロードして追加する場合
・DSOのモジュールをコンパイルする場合
8-3 データを圧縮して送るには <mod_deflate、mod_gzip>
・自動的に圧縮と復元が行なわれる
・Apache 2でmod_deflateを使う
・Apache 1.3でmod_gzipを使う
・そのほかの圧縮設定
8-4 違うURLでアクセスさせるには <mod_rewrite>
8-5 Perlスクリプトを組み込めるようにするには <mod_perlのインストール>
・Apache 2にmod_perl 2をインストールする
・Apache 1.3にmod_perl 1をインストールする
8-6 PerlスクリプトをApacheに組み込むには <mod_perlの利用>
8-7 CGIスクリプトをmod_perlで動かすには <PerlのRegistryモジュール>
STEP UP <さまざまなApacheモジュール>

■第9章 SSLに対応しよう
9-1 暗号化されたWebサーバーを構築するには <SSL>
・SSLで高まるWebサイトのセキュリティ
・CAに認証してもらうしくみ
9-2 SSLをインストールするには <OpenSSL>
・SSLってなに?
9-3 ApacheからSSLを使えるようにするには <mod_ssl>
・Apache 2の場合
・Apache 1.3の場合
9-4 テスト用の証明書を作成するには <サーバー証明書>
・証明書を作る
・Apacheを設定する(Apache 2の場合)
・Apacheを設定する(Apache 1.3の場合)
・クライアントからアクセスする
・本格的にSSLを利用したWebサーバーを運営するには
STEP UP <WebDAVを使ってみよう>

■第10章 ログを活用しよう
10-1 ログをチェックしよう <ログのチェックポイント>
・誰が何にアクセスしているかをチェック
・怪しいアクセスに注意する
・ログの解析ツールもある
10-2 アクセスログの記録項目を変えるには <LogFormat、CustomLog>
・フォーマットの指定方法
10-3 指定した条件でログを分けるには <環境変数による制御>
10-4 エラーログの記録項目を変えるには <LogLevel>
10-5 ログ中のIPアドレスをホスト名に変えるには <logresolve>
10-6 Cookieでユーザーを追跡するには <mod_usertrack>
10-7 ログを1日単位で切り替えるには <ログのローテーション>
・rotatelogsコマンドを使う場合
・OSの標準機能を使う場合
STEP UP <ログ解析ツールを使おう>

■第11章 サーバーを管理しよう
11-1 セキュリティに気をつけよう <セキュリティ対策>
・インターネットのサーバーはスキャンや攻撃を受ける
・Apacheで気をつけるべきこと
・その他の危険
11-2 動作状態をWebブラウザで確認するには <mod_status、mod_info>
・動作状況を確認する――mod_status
・設定情報を確認する――mod_info
11-3 サーバーの動作状態を確認するには <OSの観察>
・CPUの負荷の状態を見る
・プロセスの状態を見る
・ネットワークカードの状態を見る
・ネットワークがつながっているかを確認する
・ネットワークに関する状態を見る
・OSのログを見よう
11-4 ロボットからのアクセスを制限するには <robots.txt>
・収集されたくないディレクトリをrobots.txtで指定
・HTMLのmetaタグでも指定できる
11-5 性能を向上させるには <パフォーマンスチューニング>
・不要な設定を削れば性能は向上する
・ベンチマークでApacheの性能を測定しよう
・Keep-Aliveの調整
・待ち受けプロセス数の調整
・ApacheのMPMを選ぶ
・CGIやSSIを見直す
STEP UP <携帯向けサイトの違い>

■付録 設定項目リファレンス