2013-10-22 7 views
55

Web用Visual Studio Express 2013のIISが* .jsonファイルの読み込みを許可しないという問題があります。 * .jsonファイルを読み込もうとすると、403 Forbiddenが表示され、ヘルプページでIISを設定する方法でJSONファイルの読み込みが許可されますが、この情報/ IISの場所についてはわかりません。Web用Visual Studio Express 2013でのJSONファイルの読み込みを許可する

これはエラーページです:

HTTPエラー404.3 - あなたが要求しているページがあるため、拡張設定の 提供することはできませんが見つかりませんでした。ページが スクリプトの場合は、ハンドラを追加します。ファイルをダウンロードする必要がある場合は、MIME マップを追加します。

考えられる原因:ハンドラマッピングが存在しない可能性があります。 デフォルトでは、静的ファイルハンドラはすべてのコンテンツを処理します。使用しようとしている機能 がインストールされていない可能性があります。適切なMIMEマップ は、Webサイトまたはアプリケーションに対して有効になっていません。 (警告: .ASPXページや.configファイルなど、ユーザーがダウンロードしてはいけないコンテンツのMIMEマップを作成しないでください。)ASP.NETがインストールされていない場合

試してみてください:system.webServer/handler:現在のページの 予想されるハンドラがマップされていることを確認してください。前提条件(例えば、runtimeVersion、pipelineMode、bitness) に注意を払い、 をアプリケーションプールの設定と比較してください。予想されるハンドラ行の入力ミスに対して、余分なものを で支払ってください。 を使用して、使用しようとしている機能がインストールされていることを確認してください。 のMIMEマップが有効であることを確認するか、コマンドラインツールappcmd.exeを使用してWebサイト のMIMEマップを追加します。 MIMEタイプを設定するには、IIS Expressインストールディレクトリの 次のコマンドを実行します。appcmd set config/section:staticContent /+ [fileExtension = 'string'、mimeType = 'string']変数 fileExtension stringは、名前拡張子と変数 mimeType stringはファイルタイプの説明です。たとえば、拡張子が「.xyz」のファイルに MIMEマップを追加するには、次のようにします。appcmd set config /section:staticContent /+[fileExtension='.xyz',mimeType=' text/plain '] 警告:リストに追加する前に、このMIMEマッピングがWebサーバー に必要であることを確認してください。 .ASPや.ASPXなどの.CONFIGや 動的スクリプトページなどの設定ファイルは、 に直接ダウンロードするべきではなく、常にハンドラを介して処理する必要があります。 データベースファイルなどのその他のファイル、または 構成情報を格納するために.XMLや.MDFなどの 構成を格納するために使用されるファイルが使用されることがあります。クライアントが ファイルタイプをダウンロードできるかどうかを確認してから有効にします。 ASP.NETをインストールします。このエラーの詳細については、失敗した 要求追跡ログを確認してください。 詳細については、ここをクリックしてください。

詳細なエラー情報:モジュールStaticFileModule通知
ExecuteRequestHandlerハンドラStaticFileエラーコード0x80070032 要求されたURLはhttp://localhost:64107/Settings/Settings.json 物理パスD:\ GIT \ RepoP_Paneon \ Settings \の設定。JSONログオン 方法匿名ログオンユーザー匿名要求トレースディレクトリ
C:\ Users \ユーザーstefankドキュメント\ \ IISExpress \ TraceLogFiles REPOP_PANEON \

詳細情報: 要求されたURLのファイル拡張子をMIME用である場合、このエラーが発生サーバー上で構成されていないタイプ。 動的スクリプトページ、データベース、または設定ファイルではないファイルのファイル拡張子にMIMEタイプを追加できます。ハンドラを使用するファイルタイプ を処理します。動的スクリプトページ、データベースまたは設定ファイルを直接ダウンロードすることはできません。 見る詳細はいくつかのより多くのグーグル後

答えて

164

を»、と私はあなたがWeb.configでIISの設定を定義する必要があること、が分かった実験。それは魔法のように動作

<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".json" mimeType="application/json" /> 
    </staticContent> 
    </system.webServer> 

:以下の設定を追加した後

フル・セットアップ・ファイルの例:管理者privilagesと

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
    <compilation debug="true" targetFramework="4.0"/> 
    </system.web> 
    <system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".json" mimeType="application/json" /> 
    </staticContent> 
    </system.webServer> 
</configuration> 
+6

興味深いことに、これは私にとっては役に立たなかった。私はVS 2013、IIS Express、IE 11、.NET 4.5.1を使用しています。 – jpierson

+0

設定ファイルはどのように表示されますか? – Stefan

+0

これは私にとってもうまくいきませんでした。 .jsonファイルはhtml/textのままです。MIMEタイプ – codeepic

5
  • オープンCMD。
  • 移動先:

    cd C:\Program Files\IIS Express または
    cd C:\Program Files (x86)\IIS Express

  • 実行]コマンド:

    appcmd set config /section:staticContent /+[fileExtension='JSON',mimeType='application/x-javascript']

6

我々は、IISで(Visual Studioの開発環境を区別する必要があるかもしれませんExpress)ローカルIISから(Azure WebSitesのような)リモートサーバーがあります。私は私のローカル(イントラネット)がすでにIIS定義されたJSONのMIMEタイプを持っているので、この区別をする必要があり

<mimeMap fileExtension=".json" mimeType="application/javascript" /> 

:特にIIS Expressをターゲットとするには、例えば、我々は%USERPROFILE%\Documents\IISExpress\config\applicationhost.configsystem.webServer/staticContentの下で編集します。私はAzureのWebサイトへ展開するときだから私はWeb.Release.configでこの変換を使用します。

<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".json" mimeType="application/javascript" xdt:Transform="Insert" /> 
    </staticContent> 
</system.webServer> 
14

より良い未来IISは、JSONのサポートでビルドしている場合には削除タグを追加します。これはmimeMapのweb.configセクションです。

<system.webServer> 
    <staticContent> 
     <remove fileExtension=".woff" /> 
     <remove fileExtension=".woff2" /> 
     <remove fileExtension=".json" /> 
     <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" /> 
     <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" /> 
     <mimeMap fileExtension=".json" mimeType="application/json" /> 
    </staticContent> 
<system.webServer> 
関連する問題