トップページ >  Apache >  httpd.conf
初版2006/09/06: 最終更新日2007/01/31
httpd.conf
目次
httpd.conf
ServerRoot
PidFile
ServerName
DocumentRoot
ErrorLog
NameVirtualHost
AuthType
AuthName
AuthUserFile
AuthGroupFile
require
httpd.conf
Apacheの設定ファイルであるhttpd.confについて説明します。
httpd.confは1行に1ディレクティブ形式で記述されています。
#で始まる行はコメント行を意味しています。

このファイルは色々と変更するため、インストール時の設定ファイルをバックアップとっておいた方がよいです。
では以下に、httpd.confファイルの設定について説明します。

ServerRoot
ServerRootには、confやlogsフォルダを格納しているフォルダを指定します。
私の環境では以下のようになります。

ServerRoot "C:/Program Files/Apache Group/Apache2"

フォルダパスの最後にはスラッシュ(/)は要りません。

PidFile
PidFileには、現在実行しているプロセスIDを格納するファイルを指定します。
Windows環境ではあまり意味がないと思いますが設定はできます。

PidFile logs/httpd.pid

このようにServerRootからの相対パスでも指定できますが、以下のように絶対パスでも指定可能です。

PidFile c:/httpd.pid

ServerName
ServerNameには、サーバが自分自身を示すときに使うホスト名とポートを指定します。

ServerName localhost:80

指定しなくてもApacheは動作するようですが、ドキュメントには「最高の信頼性と確実性をもたらすためには、ServerNameを使ってホスト名とポートを明示的に指定してください」とあります。

DocumentRoot
DocumentRootには、サーバがファイルを提供するディレクトリを指定します。
この時、フォルダパスの最後にはスラッシュ(/)は要りません。

DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs"

http://localhost/index.htmlへのアクセスがあればC:\Program Files\Apache Group\Apache2\htdocs\index.htmlファイルが表示されます。

ErrorLog
ErrorLogには、サーバに発生したエラーを記録するファイルを指定します。

ErrorLog logs/error.log

上記例は、ServerRootからの相対パスで指定していますが、以下のように絶対パスでも指定することができます。

ErrorLog c:/error.log

NameVirtualHost
NameVirtualHostには、名前ベースのバーチャルホストの設定を行ないたい場合にIPアドレスまたはホスト名を指定します。
IPアドレスを指定するのが推奨されています。 NameVirtualHost 111.22.33.44

名前ベースのバーチャルホストの具体的な設定方法については 名前ベース をごらんください。

AuthType
Apacheでは、ディレクトリ毎にユーザ認証制御を行うことが出来ます。
認証はBasicかDigestのどちらかの方法があり、AuthTypeで認証方法を指定します。
記述方法は

AuthType Basic

というように記述します。
記述出来る場所は、Directoryか.htaccess内です。

AuthName
AuthNameではBasic認証の画面に表示するメッセージを指定することができます。
記述方法は

AuthName "Please password"

というように記述します。
記述出来る場所は、Directoryか.htaccess内です。

AuthUserFile
AuthUserFileで、承認されるユーザとパスワードが書かれているファイルを指定します。
ユーザファイルは、パスワードが書かれているため、 htpasswd コマンドを使用して作成します。
このコマンドで、パスワード部分を暗号化してくれます。
htpasswdコマンドの詳細については こちら を御覧下さい。
記述出来る場所は、Directoryか.htaccess内です。

AuthGroupFile
AuthGroupFileは、ユーザをグループ単位で分けてあるファイルを指定します。
ファイルの中身は、以下のような感じになります。

group-a: user1 user2
group-b: suer3 user4
上記は、group-aに属するのはuser1とuser2で、group-bに属するのはuser3とuser4であることを示しています。

このファイルを指定して、require groupディレクティブでグループを指定すると、そのグループのユーザのみ承認することを意味します。

require
requireは主にブロックディレクティブや.htaccessファイルで使用されます。

require group test

とすると、testというグループに属するユーザのみアクセス可能になります。
複数のグループを指定する場合は

require group test1 test2

というように半角スペース区切りでグループ指定します。