Share via


Elemento httpRuntime (schema delle impostazioni ASP.NET)

Configura le impostazioni di runtime HTTP di ASP.NET che determinano le modalità di elaborazione di una richiesta per un'applicazione ASP.NET.

<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" 
/>

Attributi ed elementi

Nelle sezioni seguenti vengono illustrati attributi, elementi figlio e padre.

Attributi

Attribute

Oggetto di descrizione

apartmentThreading

Attributo Boolean facoltativo.

Attiva il threading apartment per la compatibilità con ASP classico.

Il valore predefinito è False.

appRequestQueueLimit

Attributo Int32 facoltativo.

Specifica il numero massimo di richieste che verranno messe in coda per l'applicazione. Quando il numero di thread disponibili non è sufficiente a elaborare una richiesta, le richieste verranno inserite in una coda. Quando la coda supera il limite specificato in questo attributo, le richieste in arrivo verranno rifiutate con un errore "503 - Server occupato".

Il valore predefinito è 5000. In .NET Framework versioni 1.0 e 1.1 il valore predefinito è 100.

delayNotificationTimeout

Attributo Int32 facoltativo.

Specifica il timeout in secondi per le notifiche di ritardo.

Il valore predefinito è 5.

enable

Attributo Boolean facoltativo.

Specifica se il dominio dell'applicazione (AppDomain) è abilitato per accettare richieste in arrivo a livello di nodo corrente e di nodo figlio. Se impostato su False, l'applicazione è disabilitata.

Il valore predefinito è True.

enableHeaderChecking

Attributo Boolean facoltativo.

Specifica se è necessario cercare potenziali attacchi di inserimento nell'intestazione di richiesta mediante ASP.NET. Se viene rilevato un attacco, ASP.NET genera un errore.

Il valore predefinito è True.

enableKernelOutputCache

Attributo Boolean facoltativo.

Specifica se la memorizzazione nella cache di output è abilitato. Questo attributo è rilevante solo quando è installato Microsoft Internet Information Services (IIS) 6.0 o versione successiva. La configurazione della memorizzazione nella cache di output e il tipo di richiesta determina se è possibile inserire contenuto nella cache.

Per memorizzare nella cache una risposta, è necessario che siano soddisfatti i seguenti criteri:

  • La memorizzazione nella cache deve essere esplicitamente abilitata da una direttiva di pagina o dall'uso dell'API relativa.

  • La memorizzazione nella cache deve presentare criteri di scadenza in base ai quali il kernel possa eliminare la risposta.

  • La memorizzazione nella cache non presenta parametri o intestazioni variabili.

  • L'autenticazione è facoltativa.

Il valore predefinito è True.

enableVersionHeader

Attributo Boolean facoltativo.

Specifica se è necessario generare un'intestazione di versione mediante ASP.NET. Questo attributo viene utilizzato in Microsoft Visual Studio 2005 per determinare la versione di ASP.NET in uso. Non è necessario per i siti di produzione e può essere disabilitato.

NotaNota
Questo attributo non è disponibile in .NET Framework 1.0.

Il valore predefinito è True.

encoderType

Ottiene o imposta il nome di un tipo personalizzato che può essere utilizzato per gestire la codifica HTML e URL.

ASP.NET utilizza il tipo HttpEncoder come gestore predefinito per attività di codifica HTML e URL. Per personalizzare il comportamento di codifica, è possibile creare una classe che eredita dal tipo HttpEncoder. Nel file di configurazione per un'applicazione, si imposta quindi l'attributo EncoderType dell'elemento httpRuntime sul nome completo in formato stringa del tipo personalizzato.

Questo attributo è nuovo in .NET Framework versione 4.

executionTimeout

Attributo Int32 facoltativo.

Specifica il numero massimo di secondi in cui è consentita l'esecuzione di una richiesta prima che venga interrotta automaticamente.

Tale timeout è valido solo se l'attributo debug nell'elemento compilation è False. Se l'attributo debug è True, per impedire l'interruzione dell'applicazione durante il debug, non impostare un valore elevato per il timeout.

Il valore predefinito è 110. In .NET Framework 1.0 e 1.1 il valore predefinito è 90 secondi.

maxRequestLength

Attributo Int32 facoltativo.

Specifica il limite di soglia di memorizzazione nel buffer del flusso di input espresso in KB. Tale limite consente di impedire attacchi denial of service provocati, ad esempio, dall'immissione di file di grandi dimensioni per il server da parte degli utenti.

Il valore predefinito è 4096. Se la soglia viene superata, viene generata un'eccezione ConfigurationErrorsException.

maxWaitChangeNotification

Attributo Int32 facoltativo.

Specifica il numero massimo di secondi di attesa dalla prima notifica della modifica dei file prima di riavviare il dominio di applicazione per una nuova richiesta. Impostare l'attributo su un numero superiore al periodo di tempo necessario per completare i processi di copia dei file. Le notifiche della modifica dei file vengono combinate in base al valore di questo attributo e dell'attributo waitChangeNotification.

Il valore predefinito è 0.

minFreeThreads

Attributo Int32 facoltativo.

Specifica il numero minimo di thread liberi per consentire l'esecuzione di nuove richieste. In ASP.NET questi thread vengono resi disponibili per le richieste la cui elaborazione rende necessario l'utilizzo di thread aggiuntivi.

Il valore predefinito è 8.

minLocalRequestFreeThreads

Attributo Int32 facoltativo.

Specifica il numero minimo di thread disponibili in ASP.NET per l'esecuzione di nuove richieste locali. Il numero specificato viene tenuto riservato per le richieste provenienti dall'host locale, nel caso in cui alcune richieste emettano richieste figlio sull'host locale durante l'elaborazione. Così facendo si impedisce un possibile deadlock con rientro ricorsivo nel server Web.

Il valore predefinito è 4.

requestLengthDiskThreshold

Attributo Int32 facoltativo.

Specifica il limite di soglia di memorizzazione nel buffer del flusso di input espresso in kilobyte. Il valore non deve superare quello dell'attributo maxRequestLength.

Il valore predefinito è 80.

requestValidationMode

Attributo Int32 facoltativo.

Ottiene o imposta un numero di versione che indica quale approccio alla convalida specifico della versione ASP.NET sarà utilizzato.

Il valore che si assegna a questa proprietà non è convalidato per corrispondere a una versione specifica di ASP.NET. Qualsiasi valore numerico inferiore a 4.0 (ad esempio, 3.7, 2.9o 2.0) viene interpretato come 2.0. Qualsiasi numero maggiore di 4.0 viene interpretato come 4.0.

Il valore predefinito è 4.0.

requestValidationType

Attributo String facoltativo.

Ottiene o imposta il nome di un tipo utilizzato per convalidare le richieste HTTP.

Per personalizzare il comportamento di convalida delle richieste di ASP.NET, è possibile creare una classe che eredita dal tipo RequestValidator. Nel file di configurazione per un'applicazione, si imposta quindi l'attributo requestValidationType dell'elemento httpRuntime sul nome completo in formato stringa del tipo personalizzato.

L'impostazione predefinita è il nome completo del tipo RequestValidator utilizzato da ASP.NET per la convalida

requireRootedSaveAsPath

Attributo Boolean facoltativo.

Specifica se il parametro filename in un metodo SaveAs debba essere un percorso assoluto. Il processo ASP.NET deve disporre dell'autorizzazione per creare i file nel percorso specificato.

Il valore predefinito è True.

sendCacheControlHeader

Attributo Boolean facoltativo.

Specifica se inviare un'intestazione di controllo cache. Per impostazione predefinita, è impostato su Private. Se impostato su True, la cache lato client è disabilitata.

Il valore predefinito è True.

shutdownTimeout

Attributo Int32 facoltativo.

Specifica il numero di secondi consentito perché il processo di lavoro si arresti da solo. Alla scadenza del timeout, il processo di lavoro viene interrotto da ASP.NET.

Il valore predefinito è 90 secondi.

useFullyQualifiedRedirectUrl

Attributo Boolean facoltativo.

Specifica se i reindirizzamenti del lato client sono completi, nel formato "https://server/path", necessario per alcuni controlli mobili, o se, invece, al client vengono inviati reindirizzamenti relativi. Se impostato su True, tutti i reindirizzamenti non completi vengono automaticamente convertiti nel formato completo.

NotaNota
Se l'attributo è impostato su False, alcuni browser potrebbero incontrare problemi nel caricamento di pagine che si trovano in sessioni senza cookie.

Il valore predefinito è False.

waitChangeNotification

Attributo Int32 facoltativo.

Specifica i secondi di attesa di un'altra notifica di modifica dei file prima del riavvio di AppDomain. Impostare l'attributo su un numero superiore al tempo che intercorre tra gli aggiornamenti di due notifiche di modifica delle copie dei file. Le notifiche della modifica dei file vengono combinate in base al valore di questo attributo e dell'attributo maxWaitChangeNotification .

Il valore predefinito è 0.

Elementi figlio

Nessuno.

Elementi padre

Elemento

Oggetto di descrizione

configuration

È l'elemento di primo livello necessario in ciascun file di configurazione utilizzato in Common Language Runtime e nelle applicazioni .NET Framework.

system.web

Specifica l'elemento di primo livello per le impostazioni di configurazione ASP.NET in un file di configurazione e contiene gli elementi per la configurazione di applicazioni Web ASP.NET e il controllo del comportamento delle stesse.

Note

L'elemento httpRuntime configura le impostazioni di runtime HTTP ASP.NET che determinano le modalità di elaborazione di una richiesta di applicazione ASP.NET. In .NET Framework sono disponibili diversi host di runtime, tra cui l'host di runtime ASP.NET. Quando perviene una richiesta, ASP.NET carica l'impostazione di runtime nel processo di gestione della richiesta. ASP.NET crea anche un dominio applicazione per ciascuna applicazione Web che verrà eseguita su un server Web.

Configurazione predefinita

L'elemento httpRuntime non viene definito in modo esplicito nel file Machine.config o nel file Web.config radice. Tuttavia, le impostazioni seguenti sono i valori predefiniti come da inizializzazione del sistema. Se è necessario personalizzare questa sezione, crearla nel file di configurazione e definire solo gli attributi per cui è necessario eseguire la personalizzazione.

<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"
/>

Esempio

Nell'esempio riportato di seguito viene illustrato come specificare i parametri di runtime HTTP per un'applicazione ASP.NET.

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

Informazioni sull'elemento

Gestore della sezione di configurazione

HttpRuntimeSection

Membro di configurazione

HttpRuntime

Percorsi configurabili

Machine.config

Web.config a livello di radice

Web.config a livello di applicazione

Web.config a livello di directory fisica o virtuale

Requisiti

Microsoft Internet Information Services (IIS) versione 5.0, 5.1 o 6.0

.NET Framework 1.0, 1.1, 2.0

Microsoft Visual Studio 2003 o Visual Studio 2005

Vedere anche

Riferimenti

Elemento system.web (schema delle impostazioni ASP.NET)

Elemento configuration (schema delle impostazioni generali)

System.Configuration

HttpRuntimeSection

HttpRuntime

Concetti

Memorizzazione nella cache di pagine ASP.NET

Gerarchia ed ereditarietà dei file di configurazione di ASP.NET

Protezione della configurazione di ASP.NET

Altre risorse

Impostazioni di configurazione generali (ASP.NET)

Impostazioni di configurazione di ASP.NET

Amministrazione di siti Web ASP.NET