httpRuntime-Element (ASP.NET-Einstellungsschema)

Konfiguriert HTTP-Laufzeiteinstellungen von ASP.NET, die bestimmen, wie eine Anforderung für eine ASP.NET-Anwendung verarbeitet wird.

<httpRuntime
   apartmentThreading = "[True|False]"
   appRequestQueueLimit = "number"
   delayNotificationTimeout = "number"
   enable = "[True|False]" 
   enableHeaderChecking = "[True|False]" 
   enableKernelOutputCache = "[True|False]" 
   enableVersionHeader = "[True|False]" 
   encoderType = "name"
   executionTimeout = "number"   
   maxRequestLength = "number" 
   maxWaitChangeNotification = "number" 
   minFreeThreads = "number" 
   minLocalRequestFreeThreads = "number" 
   requestLengthDiskThreshold = "number" 
   requestValidationMode = "[2.0|4.0]"
   requestValidationType = "name"
   requireRootedSaveAsPath = "[True|False]"
   sendCacheControlHeader = "[True|False]" 
   shutdownTimeout = "number"
   useFullyQualifiedRedirectUrl = "[True|False]" 
   waitChangeNotification = "number" 
/>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute, untergeordnete Elemente und übergeordnete Elemente beschrieben.

Attribute

Attribute

Beschreibungen

apartmentThreading

Optionales Boolean-Attribut.

Aktiviert das Apartmentthreading für die Kompatibilität mit klassischem ASP.

Der Standardwert ist False.

appRequestQueueLimit

Optionales Int32-Attribut.

Gibt die maximale Anzahl der Anforderungen an, die ASP.NET in die Warteschlange für die Anwendung einfügt. Wenn nicht genügend freie Threads für die Verarbeitung einer Anforderung vorhanden sind, werden die Anforderungen in die Warteschlange eingereiht. Eingehende Anforderungen werden mit der Fehlermeldung "503 – Der Server ist ausgelastet" abgewiesen, wenn die Größe der Warteschlange den in diesem Attribut festgelegten Wert überschreitet.

Der Standardwert ist 5000. Für .NET Framework, Version 1.0 und 1.1, beträgt der Standardwert 100.

delayNotificationTimeout

Optionales Int32-Attribut.

Gibt das Timeout für die Verzögerung von Benachrichtigungen in Sekunden an.

Der Standardwert ist 5.

enable

Optionales Boolean-Attribut.

Gibt an, ob die Anwendungsdomäne (AppDomain) eingehende Anforderungen auf der aktuellen Knotenebene und der untergeordneten Knotenebene akzeptiert. Im Falle von False wird die Anwendung wirksam deaktiviert.

Die Standardeinstellung ist True.

enableHeaderChecking

Optionales Boolean-Attribut.

Gibt an, ob ASP.NET den Anforderungsheader hinsichtlich potenzieller Injection-Angriffe überprüfen soll. Wenn ein Angriff erkannt wird, reagiert ASP.NET mit einem Fehler.

Die Standardeinstellung ist True.

enableKernelOutputCache

Optionales Boolean-Attribut.

Gibt an, ob die Zwischenspeicherung der Ausgabe aktiviert ist. Dieses Attribut ist nur relevant, wenn Microsoft Internetinformationsdienste (IIS) 6.0 oder höher installiert ist. Die Konfiguration der Zwischenspeicherung der Ausgabe und der Typ der Anforderung bestimmen, ob Inhalte zwischengespeichert werden können.

Damit eine Antwort zwischengespeichert wird, müssen folgende Kriterien erfüllt sein:

  • Die Zwischenspeicherung muss durch eine Seitendirektive oder mithilfe der API für das Zwischenspeichern explizit aktiviert sein.

  • Für die Zwischenspeicherung muss eine Ablaufrichtlinie vorhanden sein, sodass der Kernel erkennt, wann er die Antwort verwerfen soll.

  • Variable Header oder Parameter sind bei der Zwischenspeicherung nicht vorhanden.

  • Eine Authentifizierung ist nicht erforderlich.

Die Standardeinstellung ist True.

enableVersionHeader

Optionales Boolean-Attribut.

Gibt an, ob ASP.NET einen Versionsheader ausgibt. Dieses Attribut wird von Microsoft Visual Studio 2005 zur Bestimmung der aktuell verwendeten Version von ASP.NET verwendet. Dieses Attribut ist für Produktionssites nicht erforderlich und kann deaktiviert werden.

HinweisHinweis
Dieses Attribut steht in .NET Framework 1.0 nicht zur Verfügung.

Die Standardeinstellung ist True.

encoderType

Ruft den Namen eines benutzerdefinierten Typs ab, mit dem HTML- und URL-Codierung bearbeitet werden kann, oder legt ihn fest.

ASP.NET verwendet den HttpEncoder-Typ für HTML und URL-Codierungsaufgaben als Standardhandler. Um das Codierungsverhalten anzupassen, können Sie eine Klasse erstellen, die vom HttpEncoder-Typ erbt. In der Konfigurationsdatei für eine Anwendung legen Sie dann das EncoderType-Attribut des httpRuntime-Elements auf den vollqualifizierten Zeichenfolgennamen des benutzerdefinierten Typs fest.

Dieses Attribut ist neu in .NET Framework, Version 4.

executionTimeout

Optionales Int32-Attribut.

Gibt an, wie viele Sekunden lang eine Anforderung maximal ausgeführt werden kann, bevor sie von ASP.NET automatisch beendet wird.

Dieses Timeout ist nur gültig, wenn das Debugattribut im compilation-Element False ist. Falls das debug-Attribut True lautet, legen Sie für dieses Timeout keinen großen Wert fest, damit die Anwendung nicht während des Debuggens heruntergefahren wird.

Der Standardwert ist 110. Für .NET Framework 1.0 und 1.1 beträgt der Standardwert90 Sekunden.

maxRequestLength

Optionales Int32-Attribut.

Gibt die Grenze des Pufferungsschwellenwerts für den Eingabestream in KB an. Diese Grenze kann zum Verhindern von Denial-of-Service-Angriffen verwendet werden, die beispielsweise dadurch verursacht werden, dass Benutzer große Dateien auf dem Server bereitstellen.

Der Standardwert ist 4096. Wenn der Schwellenwert überschritten wird, wird eine ConfigurationErrorsException-Ausnahme ausgelöst.

maxWaitChangeNotification

Optionales Int32-Attribut.

Gibt die maximale Anzahl von Sekunden an, die nach der ersten Benachrichtigung über eine Dateiänderung gewartet wird, bevor AppDomain für eine neue Anforderung neu gestartet wird. Legen Sie dieses Attribut auf einen Wert fest, der größer ist als die Zeit, die für das Beenden aller Dateikopiervorgänge benötigt wird. Zusammen mit dem waitChangeNotification-Attribut bildet der Wert dieses Attributs die Grundlage für Benachrichtigungen über Dateiänderungen.

Der Standardwert ist 0.

minFreeThreads

Optionales Int32-Attribut.

Gibt die Mindestanzahl freier Threads an, um die Ausführung neuer lokaler Anforderungen zu ermöglichen. Die angegebene Anzahl von Threads bleibt in ASP.NET für Anforderungen verfügbar, deren vollständige Verarbeitung zusätzliche Threads erfordert.

Der Standardwert ist 8.

minLocalRequestFreeThreads

Optionales Int32-Attribut.

Gibt die Mindestanzahl freier Threads an, die in ASP.NET verfügbar bleiben, um die Ausführung neuer lokaler Anforderungen zu ermöglichen. Die angegebene Anzahl von Threads bleibt für Anforderungen des lokalen Hosts reserviert für den Fall, dass einige Anforderungen während ihrer Verarbeitung untergeordnete Anforderungen an den lokalen Host ausgeben. Dadurch werden mögliche Engpässe beim rekursiven Wiedereintreten in den Webserver verhindert.

Der Standardwert ist 4.

requestLengthDiskThreshold

Optionales Int32-Attribut.

Gibt die Grenze des Pufferungsschwellenwerts für den Eingabestream in Kilobyte an. Der Wert sollte nicht größer als das maxRequestLength-Attribut sein.

Der Standardwert ist 80.

requestValidationMode

Optionales Int32-Attribut.

Ruft eine Versionsnummer ab, die angibt, welche ASP.NET-versionsspezifische Validierungsmethode verwendet wird, oder legt diese fest.

Der Wert, den Sie dieser Eigenschaft zuweisen, wird nicht daraufhin überprüft, ob er einer bestimmten Version von ASP.NET zu entspricht. Jeder numerische Wert, der kleiner als 4.0 (z. B. 3.7, 2.9 oder 2.0) ist, wird als 2.0 interpretiert. Jede Zahl, die größer als 4.0 ist, wird als 4.0 interpretiert.

Der Standardwert ist 4.0.

requestValidationType

Optionales String-Attribut.

Ruft den Namen eines Typs ab, der zur Validierung von HTTP-Anforderungen dient, oder legt ihn fest.

Um das ASP.NET-Anforderungsvalidierungsverhalten anzupassen, können Sie eine Klasse erstellen, die vom RequestValidator-Typ erbt. In der Konfigurationsdatei für eine Anwendung legen Sie dann das requestValidationType-Attribut des httpRuntime-Elements auf den vollqualifizierten Zeichenfolgennamen des benutzerdefinierten Typs fest.

Die Standardeinstellung ist der vollqualifizierte Name des RequestValidator-Typs, der von ASP.NET zur Validierung verwendet wird.

requireRootedSaveAsPath

Optionales Boolean-Attribut.

Gibt an, ob der filename-Parameter einer SaveAs-Methode ein absoluter Pfad sein muss. Der ASP.NET-Prozess muss über die Berechtigung zum Erstellen von Dateien an dem angegebenen Speicherort verfügen.

Die Standardeinstellung ist True.

sendCacheControlHeader

Optionales Boolean-Attribut.

Gibt an, ob ein Cachesteuerelementheader gesendet werden soll. Die Standardeinstellung ist Private. Bei True ist clientseitiges Caching deaktiviert.

Die Standardeinstellung ist True.

shutdownTimeout

Optionales Int32-Attribut.

Gibt die Anzahl der Sekunden an, die für das Beenden des Arbeitsprozesses zur Verfügung stehen. Nach Ablauf des Timeouts beendet ASP.NET den Arbeitsprozess.

Der Standardwert ist 90 Sekunden.

useFullyQualifiedRedirectUrl

Optionales Boolean-Attribut.

Gibt an, ob clientseitige Umleitungen vollqualifiziert sind (unter Verwendung des für einige mobile Steuerelemente erforderlichen Formats "https://server/path") oder ob stattdessen relative Umleitungen an den Client gesendet werden. Bei True werden alle Umleitungen, die nicht vollqualifiziert sind, automatisch in ein vollqualifiziertes Format konvertiert.

HinweisHinweis
Wenn dieses Attribut auf False festgelegt ist, können bei einigen Browsern Probleme auftreten, wenn Sie Seiten in Sitzungen ohne Cookies laden.

Der Standardwert ist False.

waitChangeNotification

Optionales Int32-Attribut.

Gibt die Zeitdauer in Sekunden an, die auf eine weitere Benachrichtigung über eine Dateiänderung abgewartet werden muss, bevor AppDomain neu gestartet wird. Legen Sie dieses Attribut auf einen Wert fest, der größer ist als die Zeit, die zwischen den Aktualisierungen zweier Änderungsbenachrichtigungen über das Kopieren von Dateien liegt. Zusammen mit dem maxWaitChangeNotification -Attribut bildet der Wert dieses Attributs die Grundlage für Benachrichtigungen über Dateiänderungen.

Der Standardwert ist 0.

Untergeordnete Elemente

Keine.

Übergeordnete Elemente

Element

Beschreibungen

configuration

Das erforderliche Stammelement in jeder Konfigurationsdatei, die von der Common Language Runtime und den .NET Framework-Anwendungen verwendet wird.

system.web

Gibt das Stammelement für die ASP.NET-Konfigurationseinstellungen in einer Konfigurationsdatei an und enthält Konfigurationselemente, die ASP.NET-Webanwendungen konfigurieren und das Verhalten der Anwendungen steuern.

Hinweise

Das httpRuntime-Element konfiguriert die HTTP-Laufzeiteinstellungen von ASP.NET, die bestimmen, wie eine Anforderung einer ASP.NET-Anwendung verarbeitet wird. .NET Framework enthält eine Reihe verschiedener Laufzeithosts, darunter den ASP.NET-Laufzeithost. Beim Empfang einer Anforderung lädt ASP.NET die Laufzeiteinstellung in den Prozess, der für die Verarbeitung der Anforderung zuständig ist. ASP.NET erstellt auch eine Anwendungsdomäne für jede Webanwendung, die auf einem Webserver ausgeführt wird.

Standardkonfiguration

Das httpRuntime-Element wird nicht explizit in der Datei Machine.config oder der Stammdatei Web.config definiert. Die folgenden Einstellungen sind jedoch die Standardwerte, die vom System initialisiert werden. Wenn Sie diesen Abschnitt anpassen möchten, müssen Sie ihn in der Konfigurationsdatei erstellen und nur die Attribute definieren, die angepasst werden sollen.

<httpRuntime 
   executionTimeout="110"
   maxRequestLength="4096"
   requestLengthDiskThreshold="80"
   useFullyQualifiedRedirectUrl="false"
   minFreeThreads="8"
   minLocalRequestFreeThreads="4"
   appRequestQueueLimit="5000"
   enableKernelOutputCache="true"
   enableVersionHeader="true"
   requireRootedSaveAsPath="true"
   enable="true"
   shutdownTimeout="90"
   delayNotificationTimeout="5"
   waitChangeNotification="0"
   maxWaitChangeNotification="0"
   requestPriority="Normal"
   enableHeaderChecking="true"
   sendCacheControlHeader="true"
   apartmentThreading="false"
/>

Beispiel

Im folgenden Beispiel wird veranschaulicht, wie HTTP-Laufzeitparameter für eine ASP.NET-Anwendung angegeben werden.

<configuration>
  <system.web>
  <httpRuntime maxRequestLength="4000"
    enable = "True"
    requestLengthDiskThreshold="512
    useFullyQualifiedRedirectUrl="True"
    executionTimeout="45"
    versionHeader="1.1.4128"/>
  </system.web>
</configuration>

Elementinformationen

Konfigurationsabschnittshandler

HttpRuntimeSection

Konfigurationsmember

HttpRuntime

Konfigurierbare Speicherorte

Machine.config

Web.config auf der Stammebene

Web.config auf der Anwendungsebene

Web.config auf der Ebene virtueller oder physikalischer Verzeichnisse

Anforderungen

Microsoft Internetinformationsdienste (IIS), Version 5.0, 5.1 oder 6.0

.NET Framework 1.0, 1.1, 2.0

Microsoft Visual Studio 2003 oder Visual Studio 2005

Siehe auch

Referenz

system.web-Element (ASP.NET-Einstellungsschema)

configuration-Element (allgemeines Einstellungsschema)

System.Configuration

HttpRuntimeSection

HttpRuntime

Konzepte

Zwischenspeichern von ASP.NET-Seiten

ASP.NET-Konfigurationsdateihierarchie und Vererbung

Absichern der ASP.NET-Konfiguration

Weitere Ressourcen

Allgemeine Konfigurationseinstellungen (ASP.NET)

ASP.NET-Konfigurationseinstellungen

ASP.NET-Websiteverwaltung