ASP.NET Core 2サイトをホストしていて、エラーメッセージが表示されます。
HTTP Error 500.21 - Internal Server Error
Handler "aspNetCore" has a bad module "AspNetCoreModule" in its module list
私のアプリケーションはnopCommerce 4.00を使用しており、サーバー側には既にASP.NET Coreコンポーネントがインストールされています。
私は、asp.netコアアプリをIISにホストする方法について このブログに従って の後に同じ問題に直面していました。 Visual Studioは、公開された出力フォルダーに次のweb.configを追加しました。
次に、IISモジュールを調べて、.NETコアホスティングバンドルが適切にインストールされているかどうかを確認し、これを確認しました。
だから私はweb.configのモジュールを変更しました、
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
その後は問題なく動作しました。
同じエラーが発生しました。ハンドラはAspNetCoreModule
で、コードは%SystemRoot%\system32\inetsrv\aspnetcore.dll
です。コードAspNetCoreModuleV2
でハンドラーを%ProgramFiles%\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll
に変更すると、問題が解決しました。
この link も役立ちます。リンクが機能しない場合:
このエラーは、コンピュータのIISに AspNetCoreModule が正しくインストールされていない場合に発生する可能性がありますこれは、Microsoft Dynamics NAV Webサーバーコンポーネントを実行しています。AspNetCoreModuleは、Microsoft .NET Core Windows Server Hostingバンドルと共にインストールされます。これが完全にインストールされていないか、インストールが何らかの方法で破損している場合、このエラーが発生する可能性があります。
この問題を解決するには、コントロールパネルの[プログラムと機能]を開き、Microsoft .NET Core Windows Server Hostingがインストールされているかどうかを確認します。次に、次のいずれかを試してください。
インストールされている場合は、[プログラムと機能]から選択し、[変更]を選択して、[修復]を選択して修復します。
インストールされていない場合は、Microsoft .NET Core-Windows Server Hosting bundleをダウンロードしてインストールします。
同じエラーが発生しました、settinigstdoutLogEnabled = "true"によってweb.configファイルのログを有効にしました
<aspNetCore processPath=".\site01.exe" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
そして、私はMicrosoft.AspNetCore.Appの正しいバージョンがないことを発見しました
It was not possible to find any compatible framework version
The framework 'Microsoft.AspNetCore.App', version '2.1.12' was not found.
- The following frameworks were found:
3.1.2 at [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
そのため、ASP.NET Core 2.1ランタイム(v2.1.16)-Windows Hosting Bundle Installerを https://dotnet.Microsoftからインストールしました.com/download/dotnet-core/2.1/runtime /?utm_source = getdotnetcore&utm_medium = referral
そして私の問題は解決されました