さくらインターネットでファイル一覧を表示させないようにする

さくらインターネットでファイル一覧を表示させないようにする

さくらインターネットは、デフォルトではindexファイルがない場合ファイル一覧を表示するようになっているため非表示にするよう設定しました。

ファイル一覧を表示させないようにするには、.htaccessに以下を追加します。

Options -Indexes

ところがさくらインターネットではOptionsが使えないらしく、うまくいきません。
管理画面から設定する方法が紹介されていたので、そちらで設定することにしました。

サーバコントロールパネルからファイル一覧を非表示に設定する

サーバコントロールパネルにログインします。

サーバコントロールパネルにログイン

「運用に便利なツール」の「ファイルマネージャー」をクリックします。

「ファイルマネージャー」をクリック

「表示アドレスへの操作」の「アクセス設定」をクリックします。

「アクセス設定」をクリック

「ファイルが存在しない場合の動作」で「アクセスを拒否する」にチェックを入れます。
「indexファイルの名前」に何も入力されていないとすべてのファイルにアクセスができなくなってしまうので、「index.html」などトップページとなるファイル名を記述しておきます。
「OK」をクリックして設定は完了です。

「アクセスを拒否する」にチェック

2013.10.26 追記

実は何度設定しても気付けばファイル一覧が閲覧可能になっている…という状況だったのですが、やっと原因が分かりました。
.htaccessを、Movable Typeのインデックステンプレートにしていたことが原因でした。

さくらインターネットのサーバコントロールパネル上で、ファイル一覧非表示の設定をすると、.htaccessに以下のコードが追加されます。
しかし、私はMovable Typeのインデックステンプレートで.htaccessを作成していたため、再構築する度にファイル一覧非表示用のコード追記前の状態に戻してしまっていたのでした…。
インデックステンプレートに以下のコードを追加したので今度こそ大丈夫なはず…!

# ファイル一覧非表示
DirectoryIndex index.html index.htm index.shtml index.php index.cgi .ht
AuthUserFile /home/******/www/.htpasswd
AuthType Basic
AuthName "Web access"
Satisfy all
Order deny,allow

コードを見てみると、「アクセス設定」の中で「indexファイルの名前」に入力されたファイル名が「DirectoryIndex」に、「パスワードファイル」に入力されたファイル名が「AuthUserFile」に入力されているようですが、私みたいに「.htaccessよく分かんない…」という人はファイルマネージャーから設定するのが確実かなーという気がします。

参考サイト

さくらのサーバでフォルダ一覧(Index of)を非表示にする方法 | CREAMU

下のボタンを押すと拍手送信&メッセージフォームが開きます。→WEB拍手お返事