webmatrix(IIS Express):HTTP エラー 403.14 – Forbidden Web サーバーは、このディレクトリの内容の一覧を…etc

Published on:
Last updated:

This post is also available in: 日本語 (Japanese)

記事の内容が古くなってますので、最新のwebmatrixをお使いの場合には、以下のマイクロソフトのサポートページを参照ください。
エラーの内容はディレクトリの内容の一覧を表示しないように設定されてあることが原因ですので、「ディレクトリの参照」ができるように設定を変更する作業が必要です。
https://support.microsoft.com/ja-jp/help/942062/http-error-403-14-forbidden-error-when-you-open-an-iis-7-0-webpage


webmatrixを使っていて開発をしている際エラーが出て、マイクロソフトのサポートページの説明が恐ろしく分かりにくかったので、忘れないようにメモしています。

HTTP エラー 403.14 - Forbidden
Web サーバーは、このディレクトリの内容の一覧を表示しないように構成されています。

可能性のある原因:
既定のドキュメントは要求された URL に対して構成されていません。ディレクトリの参照がサーバーで有効にされていません。


このエラーの原因はローカルホストのトップ(例えば、http://localhost/)に表示可能なファイルはなく、ディレクトリの内容の一覧を表示しないように設定しているかららしいです。
なので、ローカルホストのファイルがあるアドレス(例えば、http://localhost/sample.php)などを入力すれば解決するかと思われます。

対処方法

マイクロソフトのサポートページは機械翻訳しているそうなので、叩くべきコマンドがよく分からない翻訳になっています。

1.IIS Expressインストールディレクトリに移動

デフォルトなら下記の場所です。

cd C:\Program Files\IIS Express

2.ディレクトリ参照を有効にする

サーバー レベルでのディレクトリ参照を有効にする場合。全世界に公開する時には気をつけてください(一般公開する際には気を付けてくださいという意味です)。

appcmd set config /section:system.webServer/directoryBrowse /enabled:true

サイト レベルでのディレクトリ参照を有効にする場合。

appcmd set config ["SITE_NAME"] /section:system.webServer/directoryBrowse /enabled:true

3.ディレクトリ参照を無効にしたい場合

サーバー レベルでのディレクトリ参照を無効にする場合。

appcmd set config /section:system.webServer/directoryBrowse /enabled:false

サイト レベルでのディレクトリ参照を無効にする場合。

appcmd set config ["SITE_NAME"] /section:system.webServer/directoryBrowse /enabled:false

参考引用:
http://support.microsoft.com/kb/942062/

No tags for this post.

About
Kuniyoshi Takemoto is the founder of Amelt.net LLC, and editor of this blog(www.amelt.net).Learn more and follow me on LinkedIn.