ASP.NET アプリケーションのウイルス対策スキャンから除外するフォルダー
この記事は、一部のフォルダーが AppDomain
ウイルス対策ソフトウェアによって除外されていない場合に、ASP.NET アプリケーションの がアンロードされる可能性がある問題を解決するのに役立ちます。
元の製品バージョン: ASP.NET、.NET Framework 4.8、4.7、4.6、4.5.2、3.5 Service Pack 1
元の KB 番号: 3126034
概要
ASP.NET アプリケーションでは、特定のフォルダーをウイルス対策スキャンから除外する必要があります。 そうでない場合、スキャンによって不注意による AppDomain
アンロードが発生し、パフォーマンスの問題が発生する可能性があります。
ASP.NET では、Win32 関数を ReadDirectoryChangesW
使用してディレクトリとファイルを監視します。 次のシナリオでは、ASP.NET AppDomain
クラスがアンロードされます。
アプリケーションの物理ルート パスとそのすべてのサブディレクトリは、サブディレクトリ名の変更または削除を監視します。
AppDomain
これらの変更のいずれかが発生した場合、 はアンロードされます。アプリケーション ルート
bin
フォルダーの 、App_Code
、App_WebReferences
、App_GlobalResources
およびApp_Browsers
サブディレクトリは、作成、削除、名前変更、ACL の変更、最終書き込み時刻への変更、およびサイズの変更について監視されます。 これらの変更のいずれかが変更された場合、AppDomain
はアンロードされます。machine.config
ファイルとルート web.config ファイルは、変更がないか監視されます。 これらのファイルのいずれかに変更を行うと、 がAppDomain
アンロードされます。親アプリケーションの web.config ファイルが監視されます。 このファイルを変更すると、 が
AppDomain
アンロードされます。アプリケーション ルート内の web.config ファイルが監視されます。 このファイルを変更すると、 が
AppDomain
アンロードされます。一
hash.web
時 ASP.NET ファイル フォルダーのハッシュ サブディレクトリにあるファイルが監視されます。 この監視は、 と ランタイムBuildManager
の両方ClientBuildManager
がアプリケーション ファイルを更新する開発シナリオをサポートするために追加されました。 ビルド マネージャーは 2 つ存在するため、同期を維持する必要がありhash.web
、その目的でファイルが使用されます。アプリケーションの任意のサブディレクトリ内の web.config ファイルが監視されます。 このファイルを変更すると、 が
AppDomain
アンロードされます。各仮想サブディレクトリのサブディレクトリは
App_LocalResources
、作成、削除、名前変更、ACL の変更、最終書き込み時刻への変更、サイズの変更を監視します。 これらの変更のいずれかが変更された場合、AppDomain
はアンロードされます。
監視されるファイルとフォルダーに基づいて、ウイルス対策スキャンからの除外には、次のディレクトリをお勧めします。
- ASP.NET アプリケーションのルート ディレクトリとそのすべてのサブディレクトリ。
- .NET Framework構成ファイル ディレクトリ。 これは、.NET Frameworkのバージョンと、ASP.NET アプリケーションが 32 ビット プロセスまたは 64 ビット プロセスで実行されているかどうかによって異なります。
- ASP.NET アプリケーションの親アプリケーションのルート ディレクトリ。
- [一時 ASP.NET ファイル] フォルダー。
また、次の IIS ディレクトリは、ASP.NET アプリケーションのウイルス対策スキャンから除外することをお勧めします。
%systemroot%\System32\inetsrv\config
%systemdrive%\inetpub\temp
詳細
アンロードを回避 AppDomain
するには、無効にします FCNMode
(FCN はファイル変更通知を表します)。 を無効にする FCNMode
方法については、「 Web サイト上の 2.0 接続アプリケーション ASP.NET 応答を停止するように見える場合があります」を参照してください。 ただし、FCNMode を無効にすることはお勧めしません。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示