20

Win Server 2k8 の IIS 7 で新しい .net 2.0 Web サイトをセットアップしました。ページを参照すると、404.17 エラーが表示され、ファイル (この場合は default.aspx) がスクリプトのように見えますが、静的ファイル ハンドラーによって処理されます。ASP.Net のモジュール マッピングが台無しになったように聞こえますが、構成では問題ないように見えます。このエラーを修正するための提案はありますか?

4

16 に答える 16

27

どういうわけかASP.NET ISAPIが壊れたときに、IIS6でこの問題が発生しました。

ランニング

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i 

設定を再作成するためにそれを処理しました。

于 2008-09-17T20:38:57.867 に答える
12

この解決策は私にとってはうまくいきました...(私は aspnet_regiis.exe -i にいくつかの損害を与えました)

http://forums.iis.net/t/1157725.aspx

1. アプリケーション プールを見つけて右クリックします。
2.基本設定を選択
3. 現在の .Net Framework バージョンを選択します
4.アプリケーションプールを再起動します
于 2010-03-18T22:06:46.473 に答える
6

私にとっては、次のことを行うことで機能しました

ASP.NET をインストールする

cd %windir%\Microsoft.NET\Framework64/v4.0.30319
aspnet_regiis.exe -i
  • 次に IIS マネージャーに移動し、サーバー (ルート) ノードをクリックします。
  • 機能ビューの IIS セクションで、[ISAPI & CGI 制限] を開きます。
  • ASP.NET 4 制限列を右クリックし、右クリックして許可します

それがあなたのために働くことを願っています..

于 2012-12-12T03:30:47.860 に答える
4

最初にハンドラー マッピングで「親に戻す」を必ず試してください。

IIS 7.5 で ASP.NET 4.0 を実行しようとすると、404.17 が発生しました。上記のすべてを試したところ、最終的に正しいハンドラー マッピングが手動で設定され、エラーは解消されました。

次に、同じエラーのあるさらに別の Web サイトで、ハンドラー マッピングで「親に戻す」を試みたところ、6 つの *.aspx マッピングが追加され、すべてが完全に機能しました。

明らかに、(インストール時またはその他の方法で) 親を適切に構成する必要がありますが、これは非常に簡単であるため、間違いなく誰もが最初に行うべきステップです。

于 2011-07-20T16:13:02.140 に答える
4

私にとって、私の問題は、プロジェクトの web.config ファイルの設定が原因で発生しました (問題を理解したら、解決策もありました)。

私の web.config ファイルでは、system.webServer > handlers領域に次の 2 行がありました。

<remove name="WebServiceHandlerFactory-ISAPI-2.0" />
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

代替ハンドラーには属性「preCondition="integratedMode"」があることに注意してください。そのため、パイプライン モードの設定にクラシックではなく統合を使用するように AppPool を変更する必要がありました (これは、上記のソリューションで指示されたこととは逆です)。

于 2010-08-11T19:20:14.830 に答える
3

私にとっての解決策は、仮想アプリケーションの下のハンドラー マッピング セクションから [継承から元に戻す] をクリックすることでした。

于 2011-06-24T16:40:50.873 に答える
1

これまでのところ、これらのソリューションはどれも私には効果がありませんでした。

私は他のいくつかの可能な解決策を見つけました(それは私にとってはうまくいきませんでした):

于 2010-08-10T23:41:04.323 に答える
1

私にとって、これは32ビットアプリケーションをtrueに設定することで解決しました。

于 2012-05-30T02:48:29.390 に答える
1

この問題を解決する唯一の方法は...

最初に Windows7 をインストールし、次に IIS 7 をすべての機能と共にインストールします

そして、Visual Studio 2008 / 2010をインストールしました

Visual Studio 2008 および 2010 で作業していますが、このエラーはこれまで見たことがありません。

友達のPCでも試せます。また、このエラーを解決します。

于 2010-09-06T06:35:45.210 に答える
0

上記のどれも私にとってはうまくいきませんでした。私たちのサーバーは 64 ビットなので、32 ビット アプリケーションを許可するようにアプリケーションを設定するとうまくいきました。

  • Web サーバー\アプリケーション プールに移動します。
  • Web サイトで使用されているアプリケーション プールを右クリックします。
  • [詳細設定...] をクリックします。
  • 「32 ビット アプリケーションを有効にする」を True に設定します。

これは、Web アプリケーションが 32 ビット専用にコンパイルされたためだと思います。

于 2011-06-10T11:11:27.043 に答える
0
%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i

32フレームワークで「不正な形式のプログラムをロードしようとしました...」というメッセージが表示された後、私のために働きました

たぶん病気で、グーグルでもう1秒保存してください

于 2011-07-26T15:43:48.607 に答える
0

ASP.NET 3.5 および 4.5、ISAPI 拡張機能、ISAPI フィルター、およびサーバー サイド インクルードを、IIS 開発機能の下の Windows 機能メニューにインストールする必要がありました。

または、コマンド ライン DISM を使用します。

Dism /online /enable-feature /featurename:NetFx3 /All /Source:WindowsInstallers\Win8\sxs /LimitAccess
Dism /online /enable-feature /featurename:NetFx4 /All /Source:WindowsInstallers\Win8\sxs /LimitAccess
Dism /online /enable-feature /featurename:IIS-ISAPIExtensions /All /Source:WindowsInstallers\Win8\sxs /LimitAccess
Dism /online /enable-feature /featurename:IIS-ISAPIFilter /All /Source:WindowsInstallers\Win8\sxs /LimitAccess
Dism /online /enable-feature /featurename:IIS-ServerSideIncludes /All /Source:WindowsInstallers\Win8\sxs /LimitAccess
于 2015-07-08T15:56:48.503 に答える
0

私にとっては、これでうまくいきました。マシン構成セクション、ハンドラー、アセンブリ、モジュール、プロトコル、およびその他の多くのものをインストールして、適切に動作させます。

于 2012-07-31T09:09:18.470 に答える
0

Windows 機能のオン/オフを切り替える WCF サービスでの http アクティベーションにより、問題が解決されました。

于 2016-12-17T05:58:36.563 に答える