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:
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.
Nota
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.
Nota
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 |
|
Membro di configurazione |
|
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)
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)