さくらインターネットサーバーで Index of を表示させないようにする方法

2016/01/08

レンタルサーバーのさくらインターネットサーバーでは、ドメインのルートのアドレスへアクセスすると、次のように Index of が表示され、ファイルの一覧が丸見えになってしまいます。

hide-index-of-lists-in-sakura-server01

しかもこの画面を辿って、フォルダやファイルの中身が見えてしまいます。もしもこのルートフォルダに index.htmlindex.php といったインデックスページのファイルがアップロードされていれば問題ありませんが、基本的に全てのフォルダにインデックスファイルを配置することはありません。見られても問題ないファイルであればそのままでも良いのですが、ブラウザから直接ファイルリストやファイルへアクセスできる状況は、セキュリティの面でも良い状況とは言えません。

なぜ Index of のページが表示されるのか

Web サーバーである Apache の仕様と言ってしまえばそれまでなのですが、インデックスファイルが存在しない場合、エクスプローラーのようにファイルリストが表示される仕組みになっています。一般的なレンタルサーバーでは閲覧禁止403 Forbidden エラーが表示されます。

しかし、さくらのレンタルサーバーでは、このような制御は行われておらず、ファイルリストが表示されてしまうのが初期設定となっているようです。また、さくらの場合 httpd.conf を編集することも出来ず、更には .htaccess におけるオプション設定による一括変更も行うことができません。

さくらインターネットサーバーで Index of を表示させない方法

全てのフォルダにダミーの index.html ファイルを配置する

設定周りをいじらず設定する簡単な方法は、Index of のリストを見せたくない全てのフォルダにインデックスファイルを配置してしまうことです。設定を変更するのがよくわからない人は、この方法が一番安全かつ簡単な方法になります。

このような感じの index.html ファイルを作成して、各フォルダにアップロードすれば完了です。意味の無いページなので、検索サイトに表示されないように念のため noindex を設定しています。

<!DOCTYPE html>
<html lang="ja">
<head>
<title>Index</title>
<meta name="robots" content="noindex,nofollow">
</head>
<body>
</body>
</body>
</html>

上記ファイルを zip ファイルで圧縮したものを置いておきます。解凍した上でご利用ください。なお、既にインデックスファイルが格納されているフォルダのファイルを上書きしないように気を付けてください。

Download

ファイルマネージャーでアクセス制限をする

続いてインデックスファイルを用意せずに、さくらの機能を用いてアクセス制御を行う方法になります。さくらのファイルマネージャーを利用すれば、インデックスファイルが無い場合にアクセス拒否設定を行うことができます。まずはさくらのコントロールパネルへアクセスしログインしてください。

右のツリー上にある「ファイルマネージャー」を開きます。

hide-index-of-lists-in-sakura-server02

右側にファイル一覧が表示されますが、そちらは何も選択せず、画面上部にある「表示アドレスへの操作」から「アクセス設定」を選択します。

hide-index-of-lists-in-sakura-server03

「/ のアクセス設定」画面がポップアップします。ここで「index ファイル」のタブを選択してください。すると以下のようなインデックスファイルリストが表示されます。(過去に何かしら操作された場合は、ここのリスト表記が異なる場合があります。)

hide-index-of-lists-in-sakura-server04

下の方にファイルが存在しない場合の動作を設定する箇所があります。現在は「フォルダ内の一覧を表示」が選択されています。これが Index of を表示させている正体です。ここで「アクセスを拒否する」を選択すれば設定完了です。

確定する前に、上記の index ファイル一覧で不足分があれば追記するようにしてください。ここに載っている拡張子 html、htm、shtml、php、cgi を記載しておけば問題ないでしょう。

hide-index-of-lists-in-sakura-server05

この設定を行うと、Index of の一覧が表示される代わりに 403 エラーである Forbidden が表示されるようになります。今回の設定はルートフォルダへ行っているため、下位のフォルダへも同様に適用されるので、他のフォルダへ対する設定を行う必要はありません。

アクセス拒否設定後はページがきちんと表示されなくなると困るので、きちんと動作するか必ず確認するようにしてくださいね。

このブログの運営者

気力・体力勝負なシステム業界のエンジニアを経て、個人事業主として独立。Web サイト運営、動画制作など活動の場を広げています。目指すところへの道のりは険しいですが、自分が自分らしくあるために、一歩ずつ進んでいきます!

このブログでは、困ってたどり着いた人に、分かりやすく答えを提供できるように心掛けています。更新情報は、Twitter や Facebook ページを参照ください。よろしければフォローお待ちしています。

Facebook ページ NJ-CLUCKER
このブログが役に立ったら
「いいね!」お願いします

最近のエントリー

Switch の画面がオレンジになって動かなくなった場合の対処法の1つ!セーブデータを保持したまま本体を初期化する!

プラグインを使わず WordPress の投稿ページで PHP の外部ファイルを呼び出す方法

Feedly ボタンが機能していない?!正しい URL の情報に変更する方法

Twitter で過去のツイートを閲覧・削除する方法

赤ちゃんが泣き止む動画「ふかふかかふかのうた」は生後3ヶ月の赤ちゃんにも効果抜群だった!

これで迷わない!東京ディズニーランドの喫煙所マップ一覧【写真付き】

iTunes でアートワークが反映されないのは WAV 形式が原因!AAC に変換すれば反映される!

【徹底比較】WiMAX 2+ ギガ放題プランの最安値はどこ?【2017年10月版】

おすすめのモバイルルーター・ポケット WiFi を比較!選ぶポイントは利用目的に合わせること!

公共料金の支払いはクレジットカードと口座振替のどっちがお得?