9.11. 任意のディレクトリを公開する(mod_alias)

mod_alias モジュールを使用すると、ディレクトリの別名を指定することができます。この機能を利用すると、DocumentRoot ディレクティブで指定したディレクトリの下に存在しない任意のディレクトリを公開することができます。/etc/httpd/conf/httpd.conf には以下の記述があり、mod_alias はデフォルトで読み込まれています。

LoadModule authn_alias_module modules/mod_authn_alias.so

mod_alias モジュールの関連ディレクティブは以下の通りです。

Alias URL-path file-path|directory-path

URL-path で指定した URL へのアクセスを、file-path|directory-path にマップします。例えば、http://www.example.com/data/ にアクセスすると、/data/ ディレクトリを参照するようにエイリアスを定義するには、以下のように指定します。なお、/data ではなく /data/ のように URL-path の最後に / を指定すると、/data というアクセス要求はエイリアスされません。

Alias /data /data

このように、任意のディレクトリを公開する場合は、<Directory> や <File> ディレクティブでアクセス制限の設定も記述すべきです。ディレクトリに対するアクセス制限については 項9.9 で解説します。

AliasMatch regex file-path|directory-path

Alias と同様の動作をしますが、regex に正規表現を指定します。regex に指定した正規表現とマッチした URL へのアクセスを file-path|directory-path にマップします。

ScriptAlias URL-path file-path|directory-path

URL-path で指定した URL へのアクセスを、file-path|directory-path にマップします。マップ先のディレクトリには、CGI スクリプトの実行形式ファイルが格納されます。CGI の使用については、項9.12 で解説します。

/etc/httpd/conf/httpd.conf の編集後は変更を反映させるために Apache の再起動が必要です。