ASP.NET 4アプリケーションに変換しようとしているASP.NETアプリケーションがあります。アプリケーションはかなり単純です。 IIS 7.5)に、ASP.NETアプリケーションが存在するディレクトリを指す新しいWebアプリケーションを作成しました。
アプリケーションを実行しようとしたときに、ブラウザに http:// localhost:[port] と入力すると、次のエラーが表示されます。
エラーの概要
HTTPエラー500.21-内部サーバーエラーハンドラー "PageHandlerFactory-Integrated"のモジュールリストに不正なモジュール "ManagedPipelineHandler"があります最も考えられる原因:
- マネージハンドラーが使用されます。ただし、ASP.NETがインストールされていないか、完全にはインストールされていません。
- ハンドラーモジュールリストの構成に誤植があります。
.NET 3.5SP1とVS2008を使用する前に問題はありませんが、VS2010を使用してSLアプリを公開しようとすると、同じ問題が発生します。
これを実行してみてください(%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
)ここで説明しているように forums.iis.net/t/1149449.aspx およびここで www.gotknowhow.com/articles/fix-bad-module-managedpipelinehandler-in-iis7 そしてそれは今働きます。したがって、問題はASp> NET 4.0が正しくインストールされていないことですhuuu ... :)
「aspnet_regiis.exe -i」のトリックでうまくいきました。
IISマネージャーの[サイト]で、ディレクトリ(Webページ)を見つけてアプリケーションに変換します。NETv.2以降を使用する有効なアプリケーションプールを選択(または新規作成)します。IISを再起動します。
結局、.NET 4フレームワークを再インストールしなければならなくなりました。
これは私のために働きました http://blogs.msdn.com/b/amol/archive/2009/03/31/aspx-pages-not-getting-served-on-iis-7.aspx
解決策:applicationHost.configにグローバルモジュールセクションを追加します。
<add name = "ManagedEngine" image = "%windir%\ Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition = "integratedMode、runtimeVersionv2.0、bitness32" />
64ビット用
<add name = "ManagedEngine64" image = "%windir%\ Microsoft.NET\Framework64\v2.0.50727\webengine.dll" preCondition = "integratedMode、runtimeVersionv2.0、bitness64" />
チェックする2つのこと:
1).NET 4.0ビットをボックスにインストールしましたか?
2)問題のサイトはASP.NET 4.0を使用するように設定されていますか?