Apache 設定ファイル 書式 - httpd.conf

 

2019年01月17日

 

 

設定ファイルは、Apacheサーバ動作全般に関する情報を記述したテキスト形式のファイルです。 インストールされているOSによってファイル名が異なるケースはありますが、「httpd.conf」や「apache2.conf」などが該当のファイルです。 このページでは、設定ファイルの書式について説明します。

 

目次

  1. 設定ファイルの記述例
  2. 設定ファイルの書式
  3. 設定ファイルのテスト

設定ファイルの記述例

設定ファイルの記述例(Windows)
# This is the main Apache HTTP server configuration file.
Define SRVROOT "c:/etc/httpd"
ServerRoot "${SRVROOT}"
Listen 80
ServerAdmin admin@example.com
ServerName localhost:80

<Directory />
  AllowOverride none
  Require all denied
</Directory>

DocumentRoot "c:/var/www/html"
<Directory "c:/var/www/html">
  Options Indexes FollowSymLinks
  AllowOverride None
  Require all granted
</Directory>

設定ファイルの書式

ディレクティブ(Directive)

  • ディレクティブ(Directive)とは、Apacheへの設定項目を表す識別子です。
  • 設定ファイルでは1行に1つの設定を記述し、その中には「ディレクティブ」と「引数」を記述します。
  • ディレクティブの書式は以下のとおりです。
ディレクティブの書式
ディレクティブの書式

 

  • ディレクティブは、基本的に1行で記述しますが、1行が長くなった場合には「\(バックスラッシュ)」で行を分割することができます。記述例は以下のとおりです。
長くなった行を複数行に分割する
Include conf/extra/\
httpd-ssl.conf

 

  • ディレクティブは、Apacheのバージョンによって使用可能なものが異なります。
  • ディレクティブは、大文字・小文字は区別しません。
  • ディレクティブが、設定ファイルのどこに記述できるかは「コンテキスト」によって決められています。
  • ディレクティブ引数の間は、1つ以上の空白文字かタブ文字を挿入しなければなりません。
  • 引数は、大文字・小文字は区別します。
  • 引数を複数指定する場合は、1つ1つの引数を空白文字で区切ります。
  • 引数に空白文字が含まれる場合は「”(ダブルコーテーション)」で囲う必要がありますが、空白文字がない場合は「”(ダブルコーテーション)」で囲う必要はありません(囲っても問題ありません)。

 

 

コンテナ(Container)指示子

  • コンテナ(Container)指示子は、ディレクティブの一種です。
  • コンテナ(Container)指示子は、ディレクティブの設定範囲を定義します。設定範囲は、特定のディレクトリやURLなどの形で定義します。
  • コンテナ(Container)指示子の書式は以下のとおりです
コンテナ指示子の書式
コンテナ指示子の書式

 

  • コンテナ(Container)指示子が定義した設定範囲は、ブロック中に記述したディレクティブに適用されます。
  • コンテナ(Container)指示子の中には、さらに別のコンテナ(Container)指示子を入れ子にすることができます。

 

 

コンテキスト(Context)

  • コンテキストは、ディレクティブと組み合わせ可能なコンテナ指示子や記述可能な設定ファイル(httpd.conf、.httaccess)のことを指します。
  • コンテキストには、以下のような種類があります。

 

コンテキスト一覧
コンテキスト名 コンテキストの説明
設定ファイル httpd.conf」を指します。バーチャルホストディレクトリ、以外の部分を指します。
バーチャルホスト httpd.conf」内の、「<VirtualHost>~」を指します。
ディレクトリ httpd.conf」内の、以下を指します。
  • <Directory> ~ </Directory>
  • <Location> ~ </Location>
  • <Files> ~ </Files>
  • <Proxy> ~ </Proxy>
  • <DirectoryMatch> ~ </DirectoryMatch>
  • <FilesMatch> ~ </FilesMatch>
  • <LocationMatch> ~ </LocationMatch>
  • <ProxyMatch> ~ </ProxyMatch>
.htaccess .htaccessファイル」を指します。

 

 

コメント

  • コメントは、ファイル内に注釈や覚え書きを記述したり、設定の無効化、などで利用されます。
  • コメントの書式は以下のとおりです。
コメントの書式
コメントの書式

 

  • 行頭に「#(シャープ)」がついた行が、コメントになります。

 

 

設定ファイルのテスト

  • 設定ファイルの記述内容に誤りがないかをチェックするためのツールがあります。
    • 設定ファイルに誤りがあった場合、Apacheの起動時にエラーや警告が出力されます。
  • 以下のようなコマンドで設定ファイルの記述内容チェックを実施できます。
設定ファイルのテストコマンド例(Windows)
httpd -t

 

  • 記述内容に問題がなければ以下のように結果が出力されます。
設定ファイルのテスト結果OK(Windows)
Syntax OK

 

 

 

 

 

 

Programming Style