動機

Apacheをデフォルトのままで使っていると、初期設定時のアイコンフォルダやページが閲覧できてしまい、あまり好ましくありません。例えば、
http://<あなたのドメイン>/icon/README
にアクセスしてみてください。Not Foundになれば見えない設定に変更されていますが、テキストファイルが表示された場合、デフォルトの設定になったままということになります。
そこで、表示できないように設定しましょう。本稿では、前述のファイルの非可視化のみ行います。その他の設定はググってください。きっと出てくる

Cent OSに向けた解説ページはたくさん見つかりますが、Ubuntuのものとはディレクトリの構成から異なっていて、それらに向けた解説が参考にできません。例えば、Cent OSでは
/etc/httpd/conf.d/autoindex.conf
にあたるものが、Ubuntuだと
/etc/apache2/apache2.conf
だったりします。ややこしい。しかも、前述のiconフォルダに関する設定ファイルは、また別のところにあります(本稿で述べます)

使用環境

  • Ubuntu 18.04.4 LTS
  • Apache

やってみよう

http://<domain>/icon/README の表示に関する設定ファイルは
/etc/apache2/mods-enabled/alias.conf
に格納されています。

そのディレクトリまでアクセスし、エディタで

Alias /icons/ “/usr/share/apache2/icons/”
<Directory “/usr/share/apache2/icons”>
Options FollowSymlinks
AllowOverride None
Require all granted
</Directory>


の部分をコメントアウトしてください。

# Alias /icons/ “/usr/share/apache2/icons/”
# <Directory “/usr/share/apache2/icons”>
# Options FollowSymlinks
# AllowOverride None
# Require all granted
# </Directory>

そのまま保存します。管理者権限でないと保存できないことに留意。

$sudo systemctl reload apache2
の後、もう一度 http://<domain>/icon/READMEにアクセスを試みて、できないことを確認すれば完了です。お疲れさまでした。

具体的なコマンド等

失敗しても自己責任で。

#アップデート
$sudo apt dist-upgrade
$sudo apt autoremove

#本題
$cd /etc/apache2/mods-enabled/
$sudo nano alias.conf
コメントアウト(該当行の各文頭に”#”をつける)
書き終わったらCtrl+X(exit)
[Save modified buffer? …]→”Y”
Enter

#Apacheサーバーのリロード
$sudo systemctl reload apache2

お疲れさまでした。

カテゴリー: PC