TOPサーバ構築・運用> ServerRootディレクティブ
いまさら聞けないApache〜Webサーバ構築のキソ
いまさら聞けない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のチューニングのポイント