web-dev-qa-db-ja.com

「拡張機能が設定されているため、リクエストしているページを配信できません。」エラーメッセージ

アプリケーションを実行しようとしたときにこのエラーメッセージが表示されます。修正方法がわかりません。

HTTPエラー404.3 - 見つかりません要求しているページは拡張機能の設定により配信できません。ページがスクリプトの場合は、ハンドラを追加してください。ファイルをダウンロードする必要がある場合は、MIMEマップを追加してください。

これがエラーページのスクリーンショットです。 alt text

このエラーを修正するために何ができますか?

245
delete

使用している.NET Frameworkのバージョンを登録するには、 aspnet_regiis.exe を使用します。

これは一般的な問題であり、IISがVSまたは.NETフレームワークの後にインストールされた場合に発生します。

注 - Windows 8/10ユーザーの場合は、下記のJohnOpincarの他の回答 を参照してください 。また、Kevin Brydonからのコメント/ヒント。

161
Aliostad

Windows 8/10では、使用する必要があります

  • コントロールパネルを開く→
  • プログラムと機能→
  • Windowsの機能を有効または無効にする→
  • インターネットインフォメーションサービス(IIS)→
  • ワールドワイドウェブサービス→
  • アプリケーション開発機能→
  • ASP.NETを有効にするなど、適切な項目を確認してください。 (すなわちあなたのウェブサイトを構成したい適切なバージョンをインストールしてください)

参照: この質問の解決策を参照してください

216
JohnOpincar

私は私のWindows 10上でそれを修正しました:

  1. [コントロールパネル] - [プログラムと機能] - [Windowsの機能の有効化または無効化]をクリックします。

  2. .NET Framework 4.6 Advanced Services - WCFサービスの選択

  3. HTTPの有効化を確認してください。

  4. 完了しました。

92
Quan Nguyen

私の場合は、Web設定に使用したいファイル拡張子ごとにMIMEタイプを追加する必要があります。

<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".shp" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".dbf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".kml" mimeType="text/xml" />
    </staticContent>
    ...
</system.webServer>
81
Mahmoodvcs

これが誰にでも役立つ場合のために、aspnet_regiis.exeを実行しようとしたときに私はこのエラーを得ていました:

操作は0x8007000Bで失敗しました

誤った形式でプログラムをロードしようとしました

結局のところ、サーバーは2008 64ビットを実行していたと私はユーティリティの32ビットバージョンを実行しようとしていました。\Windows\Microsoft.NET\Framework64\v2.0.50727にあるバージョンを実行すると問題が解決しました。

c:\Windows\Microsoft.NET\Framework64\v2.0.50727>aspnet_regiis.exe -i
20
Daniel

私は顧客と同じ状況にありました。 Webサイトをインストールする独自の製品があります。インストーラはすべてを設定します:IISプール、サイト、web.configなど.

インストーラーを使用して別のWebサイトをインストールしました。同じパラメータを入力したため、web.configsが両方のサイトで同じになっていました。

しかし、新しくインストールされたサイトはうまくいきましたが、古いサイトはうまくいきませんでした。それから2 IIS Managerウィンドウを開き、Webサイト設定の違いを比較し始めました。そして私は問題を見つけました。

誰かが古いサイトとのすべてのハンドラマッピングを削除しました。 "Handler mappings"に移動すると、aspx、asmx、その他の拡張子とハンドラの名前が表示されるはずです。そのため、古いサイトでは、これらのレコードはすべて失われていました。

それで、私は最初に「ハンドラマッピング」をチェックすることを提案するでしょう - そこにたくさんの記録がなければなりません。新しいWebサイトを作成して、いくつあるべきかを比較します。

誰がそれらを削除したか、人か他のプログラムか、私にはわかりません。誰かがユーザードメイン\ johnが日付 "07.03.2012 12:34"にWebサイトを変更していたことを伝える追跡アプリケーションが存在するかどうかを判断できる場合、それは便利です。

7
Ihor B.

私はWindows 2012サーバー上のすべてのWCF機能をインストールすることによって私の問題を修正しました。

A)サーバーマネージャ>管理[左上にリンク]>役割と機能の追加

B)機能> .NET Framework 4.5の機能> WCFサービス

C)機能を確認(有効化)します。全部チェックしました。

D)インストール

6
Demodave

Windows Server 2008 R2 64ビットおよび.netフレームワーク4.5を実行して、この場所からこのコマンドを実行し、成功しました。

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis -i

出力:

Microsoft (R) ASP.NET RegIIS version 4.0.30319.0
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation.  All rights reserved.
Start installing ASP.NET (4.0.30319.0).
.....
Finished installing ASP.NET (4.0.30319.0).
5
Jason Hitchings

@Mahmoodvcsが言及したように、直接ホスト/ダウンロードする必要があるファイル拡張子のMIMEタイプを設定/追加する必要がありましたが、この場合はHerokuのダンプファイル(postgresのデータベースバックアップ)であるため、パブリックIISサーバー。AWSS3バケットまたはDropboxのようなHTTP共有を必要とせずにこのファイルをダウンロードできます。これは素晴らしいオプションです。

<staticContent>
  <mimeMap fileExtension=".dump" mimeType="application/octet-stream" />
</staticContent>
3
d1jhoni1b

私も、Windows Server 2008 IIS 7ではこのエラーに遭遇しました。ビジュアルスタジオはインストールされていませんでしたので、.NET 4.0の再インストール/修復でうまくいきました。

2
Leigh

ちなみに、私はこの記事を見つけました。 http://blogs.msdn.com/b/webtopics/archive/2010/03/19/iis-7-5- IISの変更を監査する方法について説明します。 - iis-configuration-auditing.aspx 似たような問題に直面している人のために私は監査を有効にし、後であなたのサイトが機能しなくなった理由を見ることを提案します。

2
Ihor B.

IISで機能する拡張子を追加するには -

  1. IIS Managerを開き、管理したいレベルに移動します。
  2. 機能ビューで、[MIMEの種類]をダブルクリックします。
  3. [操作]ウィンドウで、[追加]をクリックします。
  4. [MIMEの種類の追加]ダイアログボックスで、[ファイル名拡張子]テキストボックスにファイル名拡張子を入力します。 ... MIMEタイプを入力
  5. mIMEタイプテキストボックスに入力します。
  6. OKをクリックしてください。

私は私のWindows 7のPC上で MediaWiki を設定しようとしていたし、このエラーを得た。

私の解決策は、 "php用のグローバルFastCGIハンドラマッピングを作成する" です。

0
TomSelleck

IIS内のアプリケーションプール(IIS 7以降の場合)が統合として選択されていることを確認します。この場合、おそらくClassicに変更することでこの問題を解決できます。

0
user1006743

Windows Server 2016の場合

  1. Server Managerフォームを開く
  2. Manage - > Add Roles and Features
  3. Featuresページまでの次のページ
  4. すべてのサブ機能でWCF Services機能を確認してください
  5. NextおよびInstall
0
Serkan Arslan

Server 2016に関連して、私は追加する必要があります:

  1. このディレクトリからaspnet_regiis -lvコマンドを実行します。C:\Windows\Microsoft.NET\Framework\v2.0.50727\これにより、何が起こっているのかがわかります

  2. Server 2016では、.netとiisのインストールの順序が違っても問題ありません。

  3. Server 2016で問題になる可能性が高いのは、単にasp.netがマシンにインストールされていないことです。

0
Jonesome