Includeディレクティブ:補助設定ファイルを読み込む

Include ディレクティブは Apache の設定ファイルである httpd.conf とは別に用意した設定ファイルを httpd.conf に取り込むときに使用します。ここでは Apache の Include ディレクティブの使い方について解説します。

(Last modified: )

Includeディレクティブの使い方

Include ディレクティブは httpd.conf ファイルと別に用意された設定ファイルを取り込む場合に使います。書式は次のとおりです。

Include ファイル名 | ディレクトリ名

ファイル名は絶対パスでの指定、又は ServerRoot ディレクティブで設定したディレクトリからの相対パスで指定します。( ServerRoot ディレクティブについては「ServerRootディレクティブ:相対パスの起点となるApacheがインストールされているディレクトリ」を参照されてください)。

例えば c:/pg/Apache/Apache24/conf/extra/my.conf ファイルを取り込む場合には次のいずれかのように記述します。(上が相対パスで記述した場合で、下が絶対パスで指定した場合です)。

Include conf/extra/my.conf
Include c:/pg/Apache/Apache24/conf/extra/my.conf

ファイル名にはワイルドカードの * を使用することができます。下記の場合は conf/extra/ ディレクトリに含まれていて拡張子が .conf のファイルをすべて設定ファイルとして取り込みます。

Include conf/extra/*.conf

ファイル名ではなくディレクトリ名を指定した場合は、指定したディレクトリ(およびサブディレクトリ)に含まれるすべてのファイルを設定ファイルとして取り込みます。下記の場合は conf/extra/ ディレクトリに含まれるすべてのファイルを設定ファイルとして取り込みます。

Include conf/extra/

あらかじめ用意されている設定ファイル

設定ファイルを自分で用意し、 http.conf ファイルの読み込みたい位置に Include ディレクティブを記述して読み込むこともできますが、 Apache では conf\extra ディレクトリの中にあらかじめ設定ファイルがいくつか用意されています。

あらかじめ用意されている設定ファイル(1)

そして httpd.conf ファイルにはこららの設定ファイルを読み込むための Include ディレクティブがコメントの形であらかじめ記述されています。

# Supplemental configuration
#
# The configuration files in the conf/extra/ directory can be 
# included to add extra features or to modify the default configuration of 
# the server, or you may simply copy their contents here and change as 
# necessary.

# Server-pool management (MPM specific)
#Include conf/extra/httpd-mpm.conf

# Multi-language error messages
#Include conf/extra/httpd-multilang-errordoc.conf

# Fancy directory listings
#Include conf/extra/httpd-autoindex.conf

# Language settings
#Include conf/extra/httpd-languages.conf

# User home directories
#Include conf/extra/httpd-userdir.conf

# Real-time info on requests and configuration
#Include conf/extra/httpd-info.conf

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf

# Local access to the Apache HTTP Server Manual
#Include conf/extra/httpd-manual.conf

# Distributed authoring and versioning (WebDAV)
#Include conf/extra/httpd-dav.conf

# Various default settings
#Include conf/extra/httpd-default.conf

# Configure mod_proxy_html to understand HTML4/XHTML1
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>

# Secure (SSL/TLS) connections
#Include conf/extra/httpd-ssl.conf
#
# Note: The following must must be present to support
#       starting without SSL on platforms with no /dev/random equivalent
#       but a statically compiled-in mod_ssl.
#
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

コメントを外せば、あらかじめ用意された設定ファイルを取り込むことができます。

例えば Language settings に関する設定ファイルである httpd-languages.conf を取り込む場合は、次のように先頭の # を削除します。

# Language settings
Include conf/extra/httpd-languages.conf

相対パスで記述されているので ServerRoot ディレクティブに設定されているディレクトリからの相対パスとなります。なお最初から用意されているこれらの設定ファイルは (Apacheをインストールしたディレクトリ)\conf\extra ディレクトリ見て頂くと設定ファイルの中身を確認することができます。

あらかじめ用意されている設定ファイル(2)

あらかじめ用意されている設定ファイル(3)

このようにあらかじめ用意されている設定ファイルを Include ディレクティブを使って http.conf ファイルに取り込むこともできます。

-- --

Apache の Include ディレクティブの使い方について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。