設定ファイル | Apache
ディレクティブ
Apache の設定ファイルは 1 行に 1 つのディレクティブからなります。
ref. https://httpd.apache.org/docs/2.4/configuring.html
ディレクティブの例)
.....
Timeout 300
.....
KeepAlive On
.....
# These need to be set in /etc/apache2/envvars
# 著者注 ディレクティブの値は環境変数を使用できる
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
.....
/etc/apache2/envvars で環境変数 APACHE_RUN_USER APACHE_RUN_GROUP が定義されている
...
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
...
セクションで限定されていないディレクティブはグローバルに影響する。
セクション
メイン設定ファイルにあるディレクティブはサーバ全体に適用されます。 サーバの一部分の設定だけを変更したい場合は
, , , , , セクションの中に置くことで適用範囲を決められます。
ref. https://httpd.apache.org/docs/2.4/configuring.html#page-header
# ----- (1)
<Directory />
AllowOverride None
Require all denied
</Directory>
...
# ----- (2)
<Directory "/var/www/html/foo">
AllowOverride All
Options -Indexes +FollowSymLinks
Require all granted
</Directory>
- (1)
- (サブディレクトリを含めて)
/以下はAllowOverride Noneにより .htaccess を使用できない - 同様に
Require all deniedにより アクセスが拒否される
- (サブディレクトリを含めて)
- (2)
- Directory セクションにより
/var/www/html/fooディレクトリ以下はAllowOverride Allにより .htaccess で オーバーライドできる - 同様に
Require all grantedにより 制限なくアクセスができる
- Directory セクションにより
※ (1) を記載することで デフォルトでの不要なディレクトリアクセスを制限し、セキュリティを向上できる。