ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない

ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない現象と対処法を紹介します。

現象の確認

ASP.NET Core アプリケーションを配置し、Webアプリケーション(アプリケーションプール)を作成し、WebアプリケーションのURLにアクセスすると以下のエラーが発生します。

エラーメッセージ
HTTP Error 500.38 - Failed to locate ASP.NET Core app

ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない:画像1

原因

IISにASP.NET Coreアプリケーションを配置している場合に、このエラーが発生します。
原因の多くは、アプリケーション発行時にファイル公開オプションの設定で[単一ファイルの生成]を有効にしていることが原因です。

IISでは、単一ファイルの生成による配置(Single-file deployment)には対応していません。

ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない:画像2

対処法

アプリケーション発行時のファイル公開オプションの設定で[単一ファイルの生成]のチェックボックスを外します。
ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない:画像3

または、[ターゲット ランタイム]の項目で"移植可能"を選択します。
ASP.NET Core アプリケーションで実行時に HTTP Error 500.38 - Failed to locate ASP.NET Core app エラーが発生しアプリケーションを起動できない:画像4

設定後、アプリケーションを発行し配置してエラーが解消されることを確認します。


AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2024-02-12
Copyright © 1995–2025 iPentec all rights reserverd.