TOP
>
サーバ構築・運用
> ServerRootディレクティブ
いまさら聞けないApache〜Webサーバ構築のキソ
第8回:Apacheの設定とチューニングポイント
著者:
ビーブレイクシステムズ 木下 喜雄
2007/12/27
前のページ
1
2
3
次のページ
ServerRootディレクティブ
Apacheのシステム全体のルートとなるディレクトリはサーバルートと呼ばれています。このサーバルート配下には通常confやlogsといったサブディレクトリが存在します。また、他のディレクティブ(たとえば、ErrorLogやLoadModuleなど)における相対パスは、このディレクティブからの相対位置となります。
ServerRootディレクティブの設定は「ServerRoot <ディレクトリパス>」となります。
Listenディレクティブ
Apacheが接続を受け付けるポート番号を指定します。Listenディレクティブの設定は「Listen <ポート番号>」となります。通常はHTTPのwell-knownポート番号の「80」を設定します。
また、複数ポート番号に対してHTTPリクエストを待ちたい場合は、Listenディレクティブを個別に記述すれば可能です。
DocumentRootディレクティブ
Webサーバのファイルを置く場所ルートディレクトリをドキュメントルートと呼び、DocumentRootディレクティブで設定します。設定は「DocumentRoot <ディレクトリパス>」となります。
<ディレクトリパス>の部分には、公開するHTMLドキュメントを保存したディレクトリを絶対パスで指定します。
DocumentRootで指定するディレクトリはUserディレクティブ、Groupディレクティブで設定した権限でアクセスできるようにパーミッションを設定してください。また、SELinuxが有効な場合は、パーミッションに問題ないファイルでもアクセスできない場合もありますので注意してください。
Includeディレクティブ
Includeディレクティブを利用すれば、他の設定ファイルを読み込むことができます。設定は「Include <設定ファイルパス>」とします。
設定ファイルパスには、読み込みたいファイルパスを指定します。パスは絶対パス、相対パスどちらも可能です。相対パスの場合、ServerRootディレクティブからの相対パスとなりますので注意してください。また、設定ファイルパスにはワイルドカードも利用可能です。
本ディレクティブを利用すれば、追加機能ごとに設定ファイルを分けることができるため、httpd.confが肥大化し、見通しが悪くなることを防止することができます。
ServerTokensディレクティブ
HTTPのレスポンスヘッダは、ApacheやOSのバージョン情報、組み込まれているモジュール情報を含めるかどうか設定します。設定は「ServerTokens <オプション>」とします。オプションに指定できるのは表3のようになります。
デフォルトはFullになっています。セキュリティ上、クライアントにはできるだけ情報を与えないほうがよいので、今回はProdに設定しましょう。本設定で、レスポンスヘッダに含まれる情報は「Apache」だけとなります。
ServerSignatureディレクティブ
リクエストがエラーになった場合などに、Apacheが自動的に生成するエラーページの最後にApacheやOSのバージョンなどをフッタに表示させるかどうかを設定するディレクティブです。設定は「ServerSignature <On|Off>」とします。
ServerTokensでの解説と同様でこれらは隠すべき情報です。そのため、今回はフッタ表示をOffにしましょう。本設定をすることで、各種バージョン情報などがフッターに表示されなくなります。
オプション値
概要
例
Full
すべての情報
Apache/2.2.3 (Debian) mod_python/3.2.10
OS
OS情報まで
Apache/2.2.3 (Debian)
Minimal
Minimal番号まで
Apache/2.2.3
Minor
Minor番号まで
Apache/2.2
Major
Major番号まで
Apache/2
Prod
Apacheのみ
Apache
表3:ServerTokensで設定できるディレクティブ
環境
コマンド
ソースインストール
# /usr/local/apache2/bin/apachectl -t
Debian
# /etc/rc.d/init.d/httpd configtest
RedHat系
# /etc/rc.d/init.d/httpd configtest
Windows
"C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -t
表4:設定ファイルのテストコマンド
環境
コマンド
ソースインストール
# /usr/local/apache2/bin/apachectl graceful
Debian
# /etc/init.d/apache2 reload
RedHat系
# /etc/rc.d/init.d/httpd reload
Windows
Windowsの場合、設定ファイルを読み直すことができません。そのため、Apacheを再起動する必要があります。
表5:設定ファイルの読み直し
設定ファイルをApacheへ反映する
設定ファイルの変更を反映させるには、Apacheを再起動するか、設定を読み込むように指示する必要があります。また、Apacheに新しい設定を適用する前に、必ず設定ファイルをテストしましょう。これは、設定ファイルに誤りがあるとApacheが起動しないためです。各環境での設定ファイルテストコマンドは表4のようになります。
設定が間違っている場合はエラーメッセージが表示されます。問題なければ、新しい設定をApacheに反映させてください。
新しい設定は「Apacheを再起動する」もしくは「設定ファイルを読み直す」ことでApacheに反映されます。今回はApacheを再起動せず、設定ファイルのみを読み直してみましょう。各環境での設定ファイル読み直すコマンドは表5のようになります。
Apacheには他にも多数のディレクティブが用意されています。Apache標準のディレクティブはApacheディレクティブクイックリファレンス(
http://59.106.2.6/manual/mod/quickreference.html
)で確認することができます。
前のページ
1
2
3
次のページ
著者プロフィール
株式会社ビーブレイクシステムズ 木下 喜雄
Javaスペシャリスト。前職ではCOBOL、Visual Basicを用いた大規模流通業向けシステム開発を行う。その現場で大規模システム構築時の開発効率の向上を目指してオブジェクト指向的な考え方を身につける。その後独学でJava言語を習得し、Java専業ベンダーであるビーブレイクシステムズに転職、現在は、Javaを用いた開発だけではなくお客様とのリアルコミュニケーションを実現できるマルチなエンジニアを目指し、日々奮闘中。
INDEX
第8回:Apacheの設定とチューニングポイント
Apacheの基本的な設定・パフォーマンスチューニングのポイント
鍵のペア作成と証明書の作成
Apacheのチューニングのポイント