古いASP.NETサイトからの* .jsonファイルのダウンロードを有効にするにはどうすればよいですか(IIS6は信じられます)?
JSONファイルの代わりに404ページを取得しています。
web.configファイルを作成する必要がありますか?何が入っているの?
古いASP.NETサイトからの* .jsonファイルのダウンロードを有効にするにはどうすればよいですか(IIS6は信じられます)?
JSONファイルの代わりに404ページを取得しています。
web.configファイルを作成する必要がありますか?何が入っているの?
回答:
IIS 6にJSON MIMEタイプを追加します。MSDNの「MIMEタイプの構成(IIS 6.0)」の指示に従います。
変更後にIISを再起動することを忘れないでください。
更新:IIS7以降でこれを行う簡単な方法があります。運用担当者は特にIIS6のヘルプを要求したので、この答えはそのままにしておきます。しかし、IIS6が非常に古いにもかかわらず、この回答は依然として多くのトラフィックを獲得しています。新しいものを使用しているといいので、新しいIIS7または新しいバージョンを使用している場合は、以下の@ProVegaの回答を参照して、それらの新しいバージョンの簡単な解決策を確認してください。
.ASPX
。繰り返しますが、IIS7でサーバーに切り替えると、さらに多くの簡単なソリューションが提供されます。
サイトにサポートを手動で追加する場合は、system.webServerセクションのweb.configに以下を追加するだけです。
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
これにより、IISの下に「ローカル」構成が追加されます。これはIIS6では機能しませんが、IIS7以降では機能します。
web.config
フルパスを含めるように回答を更新しました。
Cannot add duplicate collection entry of type 'mimeMap' with unique key attribute 'fileExtension' set to '.csv'
発生しました。重複を削除すると、問題ありません。
IISに移動し、アプリケーションを選択してMIMEタイプを検索します
右パネルから追加をクリックします
ファイル名拡張子= .json
MIMEタイプ= application / json
MIMEタイプに.jsonファイルタイプを追加した後、IISを再起動して jsonファイルにアクセスしてみます
そのアプリケーションのweb.configに移動し、この行を追加します
<system.webServer>
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
</system.webServer>
(@ProVegaで提案されているように)mimetypeのサポートを追加するときは、追加する前にタイプを削除することもベストプラクティスです。これは、タイプのサポートがすでに存在するサーバーにデプロイするときの予期しないエラーを防ぐためです。次に例を示します。
<staticContent>
<remove fileExtension=".json" />
<mimeMap fileExtension=".json" mimeType="application/json" />
</staticContent>
C:\Windows\System32\inetsrv\config
ファイル内の構成ファイルへのパス:applicationHost.config
この問題が発生しただけで、MIMEタイプを追加できるようにIIS Expressの構成を見つける必要がありました。私にとっては、にあり、そこにC:\Users\<username>\Documents\IISExpress\config\applicationhost.config
正しい「MIMEマップ」を追加することができました。
<mimeMap>
ノードの前に次の行を追加する必要がある場合があります<remove fileExtension=".json" />
。applicationhost.config(またはmachine.config)を変更する必要はありません。そうは言っても、新しいサイトを頻繁に作成し、各サイトのweb.configを変更する必要がない場合は、これらのファイルを変更すると役立つ場合があります。開発環境ではこれでうまくいくかもしれませんが、本番環境ではmachine.configに触れられないことが多いので、web.configに変更を加えることをお勧めします。
remove
が私にとっての鍵でした