httpRuntime-Element (ASP.NET-Einstellungsschema)

[Dieses Dokument dient lediglich Vorschauzwecken und kann in späteren Versionen geändert werden. Leere Themen sind als Platzhalter enthalten.]

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 = "string"
   executionTimeout = "number" 
   maxQueryStringLength = "number"
   maxRequestLength = "number" 
   maxUrlLength = "number"
   maxWaitChangeNotification = "number" 
   minFreeThreads = "number" 
   minLocalRequestFreeThreads = "number" 
   relaxedUrlToFileSystemMapping = "[True|False]"
   requestLengthDiskThreshold = "number" 
   requestPathInvalidCharacters = "string"
   requestValidationMode = "[2.0|4.0]"
   requestValidationType = "string"
   requireRootedSaveAsPath = "[True|False]"
   sendCacheControlHeader = "[True|False]" 
   shutdownTimeout = "number"
   targetFramework = "number"   useFullyQualifiedRedirectUrl = "[True|False]" 
   waitChangeNotification = "number" />

Attribute und Elemente

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

Attribute

Attribut

Beschreibung

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.

Standardwert: 5000.

delayNotificationTimeout

Optionales Int32-Attribut.

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

Der Standardwert ist 5 Sekunden.

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.0.

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.

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

Die Standardeinstellung ist True.

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.

Diese Zeitüberschreitung gilt nur, wenn das Debug-in Attribut der compilation Element ist False . Daher, wenn die debug -Attribut ist True , Sie haben keinen dieses Attribut auf einen hohen Wert zum Herunterfahren der Anwendung zu vermeiden, während des Debuggens festgelegt.

Der Standardwert ist 110 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 KB. 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.

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 die requestValidationType -Attribut des der httpRuntime Element, um den vollqualifizierten Namen der benutzerdefinierten Typ

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

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 KB.

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 Minuten 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.

targetFramework

Optionales String-Attribut.

Gibt die Versionsnummer, die angibt, welche Versionsrichtlinien eine versionsspezifische-Framework Common Language Runtime (CLR) verwendet wird. Wenn dieses Attribut weggelassen wird, wird das Ziel-Framework auf 4.0 festgelegt.

Der Standardwert ist Null.

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.

NoteNote
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 Sekunden.

maxQueryStringLength

Optionales Int32-Attribut.

Die maximale Länge der Abfragezeichenfolge als Anzahl der Zeichen. Standardwert: 2048.

Der Wert der MaxQueryStringLength-Eigenschaft kann eine beliebige ganze Zahl gleich oder größer als 0 sein. Wenn die Länge einer Abfragezeichenfolge die Größenbeschränkung überschreitet, gibt ASP.NET einen HTTP 400 (Bad Request)-Statuscode zurück.

NoteNote
Äußerst kleine Werte können eine Website unbrauchbar machen.
NoteNote
Es gibt auch eine IIS-Einstellung, die Länge der Zeichenfolge Abfrage steuert.Siehe die maxQueryString Attribut in der Anfordern Grenzen <requestLimits>.

maxUrlLength

Optionales Int32-Attribut.

Die maximale Länge der URL, Anzahl der Zeichen. Standardwert: 260.

Der Wert der MaxUrlLength-Eigenschaft kann eine beliebige ganze Zahl gleich oder größer als 0 sein.

Wenn die Länge der Abfrage-URL (d.h. der Wert der Path-Eigenschaft) die konfigurierte Größenbeschränkung überschreitet, gibt ASP.NET einen HTTP 400-Statuscode (Bad Request) zurück.

NoteNote
Äußerst kleine Werte können eine Website unbrauchbar machen. Es gibt auch eine IIS-Einstellung, die Länge der Zeichenfolge Abfrage steuert.Siehe die maxQueryString Attribut in der Anfordern Grenzen <requestLimits>.

relaxedUrlToFileSystemMapping

Optionales Boolean-Attribut.

Gibt an, ob die URL in einer HTTP-Anforderung erforderlich ist, einen gültigen Pfad für die Windows-Datei.

Die RelaxedUrlToFileSystemMapping-Eigenschaft bestimmt, wie die URL in einer eingehenden HTTP-Anforderung überprüft wird. Wenn diese Eigenschaft false ist, wird die URL mit den gleichen Regeln validiert, die bestimmen, ob ein Windows-Dateisystempfad gültig ist.

requestPathInvalidCharacters

Optionales String-Attribut.

Eine durch Kommas getrennte Liste von Zeichen, die in einem Pfad der Anforderung ungültig sind. Die folgende Liste enthält den Standardsatz ungültiger Zeichen:

<,>,*,%,&,:,\

Untergeordnete Elemente

Keine.

Übergeordnete Elemente

Element

Beschreibung

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 
   apartmentThreading="false"
   appRequestQueueLimit="5000"
   delayNotificationTimeout="5"
   enable="true"
   enableHeaderChecking="true"
   enableKernelOutputCache="true"
   enableVersionHeader="true"
   encoderType = "System.Web.Util.HttpEncoder"
   executionTimeout="110"
   maxQueryStringLength = "2048"
   maxRequestLength="4096"
   maxUrlLength = "260"
   maxWaitChangeNotification="0"
   minFreeThreads="8"
   minLocalRequestFreeThreads="4"
   relaxedUrlToFileSystemMapping = "False"
   requestLengthDiskThreshold="80"
   requestPathInvalidCharacters = "<,>,*,%,&,:,\"
   requestValidationMode = "4.0"
   requestValidationType = "System.Web.Util.RequestValidator"
   requireRootedSaveAsPath="true"
   sendCacheControlHeader="true"
   shutdownTimeout="90"
   useFullyQualifiedRedirectUrl="false"
   waitChangeNotification="0" />

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 physischer Verzeichnisse

Anforderungen

Microsoft-Internetinformationsdienste (IIS) 5.0 oder höher

Siehe auch

Referenz

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

configuration-Element (allgemeines Einstellungsschema)

System.Configuration

HttpRuntimeSection

HttpRuntime

Konzepte

Securing Configuration

Weitere Ressourcen

Allgemeine Konfigurationseinstellungen (ASP.NET)

Configuring ASP.NET Applications