Von der Antivirus-Überprüfung in ASP.NET-Anwendungen auszuschließende Ordner

Dieser Artikel hilft Ihnen, das Problem zu beheben, dass die AppDomain in ASP.NET-Anwendungen möglicherweise entladen werden, wenn einige Ordner nicht von der Antivirensoftware ausgeschlossen werden.

Original Version des Produkts:   ASP.net, .NET Framework 4,8, 4,7, 4,6, 4.5.2, 3,5 Service Pack 1
Ursprüngliche KB-Nummer:   3126034

Zusammenfassung

In ASP.NET-Anwendungen sollten bestimmte Ordner von der Antivirus-Überprüfung ausgeschlossen werden. Wenn dies nicht der Fall ist, kann die Überprüfung unbeabsichtigtes entladen verursachen, was zu AppDomain Leistungsproblemen führt.

ASP.NET verwendet die ReadDirectoryChangesW Win32-Funktion zum Überwachen von Verzeichnissen und Dateien. In den folgenden Szenarien wird die ASP.net AppDomain -Klasse entladen:

  1. Der physische Stamm Pfad der Anwendung und alle Unterverzeichnisse werden auf Änderungen oder Löschungen von Unterverzeichnissen überwacht. Der AppDomain wird bei einer dieser Änderungen entladen.

  2. Die bin , App_Code , App_WebReferences ,, App_GlobalResources und unter App_Browsers Verzeichnisse des Stammordners der Anwendung werden für die Erstellung, Löschung, Umbenennung, ACL-Änderungen, Änderungen an der Zeit des letzten Schreibvorgangs und Änderungen an der Größe überwacht. Wenn sich diese Dinge ändern, wird das AppDomain entladen.

  3. Die machine.config -und Stamm web.config Dateien werden auf Änderungen überwacht. Eine Änderung an einer dieser Dateien wird das Entladen AppDomain .

  4. Die web.config Datei von übergeordneten Anwendungen wird überwacht. Eine Änderung an dieser Datei wird das Entladen AppDomain .

  5. Die web.config Datei im Stamm der Anwendung wird überwacht. Eine Änderung an dieser Datei wird das Entladen AppDomain .

  6. Die hash.web Datei, die sich im Unterverzeichnis Hash des Ordners Temporary ASP.net files befindet, wird überwacht. Diese Überwachung wurde hinzugefügt, um Entwicklungsszenarien zu unterstützen, bei denen sowohl die ClientBuildManager und die Laufzeit BuildManager die Anwendungsdateien aktualisieren. Da es zwei Build-Manager gibt, muss diese synchron gehalten werden, und die hash.web Datei wird zu diesem Zweck verwendet.

  7. Die web.config Datei in einem beliebigen Unterverzeichnis der Anwendung wird überwacht. Eine Änderung an dieser Datei wird das Entladen AppDomain .

  8. Das unter App_LocalResources Verzeichnis jedes virtuellen Unterverzeichnisses wird auf Erstellung, Löschung, Umbenennung, ACL-Änderungen, Änderungen an der Zeit des letzten Schreibvorgangs und Änderungen an der Größe überwacht. Wenn sich diese Dinge ändern, wird das AppDomain entladen.

Basierend auf den Dateien und Ordnern, die überwacht werden, werden die folgenden Verzeichnisse für den Ausschluss aus dem Antivirus-Scan empfohlen:

  • Das Stammverzeichnis und alle Unterverzeichnisse für die ASP.NET-Anwendung.
  • Das Verzeichnis ".NET Framework config files". Dies hängt von der Version von .NET Framework und davon ab, ob die ASP.NET-Anwendung in 32-Bit-oder 64-Bit-Prozessen läuft.
  • Das Stammverzeichnis der übergeordneten Anwendung der ASP.NET-Anwendung.
  • Der Ordner für temporäre ASP.NET-Dateien.

Außerdem wird empfohlen, dass die folgenden IIS-Verzeichnisse in ASP.NET-Anwendungen von Antivirus-Scans ausgeschlossen werden:

  • %systemroot%\System32\inetsrv\config
  • %systemdrive%\inetpub\temp

Weitere Informationen

Deaktivieren Sie AppDomain FCNMode (FCN steht für Dateiänderungsbenachrichtigung), um unlädt zu vermeiden. Informationen zum Deaktivieren von FCNMode finden Sie unter ASP.NET 2,0-verbundene Anwendungen auf einer Website scheinen möglicherweise nicht mehr reagiert. Das Deaktivieren von FCNMode wird jedoch nicht empfohlen.