端くれプログラマの備忘録 Apache [Apache] アクセス制限時にデフォルトページが表示される場合の対処

[Apache] アクセス制限時にデフォルトページが表示される場合の対処

バーチャルホストで.htaccessを配置し、以下のように特定IPでアクセス制限を設定した。

order allow,deny
allow from all
deny from xxx.xxx.xxx.xxx

すると、そのIPからアクセスするとApacheのデフォルトページが表示された。デフォルトページを表示せずにブラウザが403を表示するようにしたいんだけど。

403のハンドリングを設定している箇所を調べたら以下にあった。

/etc/httpd/conf.d/welcome.conf

#
# This configuration file enables the default "Welcome" page if there
# is no default index page present for the root URL.  To disable the
# Welcome page, comment out all the lines below.
#
# NOTE: if this file is removed, it will be restored on upgrades.
#
<LocationMatch "^/+$">
    Options -Indexes
    ErrorDocument 403 /.noindex.html
</LocationMatch>
<Directory /usr/share/httpd/noindex>
    AllowOverride None
    Require all granted
</Directory>
Alias /.noindex.html /usr/share/httpd/noindex/index.html
Alias /noindex/css/bootstrap.min.css  /usr/share/httpd/noindex/css/bootstrap.min.css
Alias /noindex/css/open-sans.css /usr/share/httpd/noindex/css/open-sans.css
Alias /images/apache_pb.gif /usr/share/httpd/noindex/images/apache_pb.gif
Alias /images/poweredby.png /usr/share/httpd/noindex/images/poweredby.png

冒頭のコメントにWelcomeページを無効化したければ、以下の全てのラインをコメントアウトしろとある。それに従ってコメントアウトしてApacheを再起動したらブラウザに403 Forbiddenが表示されるようになった。