Al momento sei offline in attesa che la connessione Internet venga ristabilita

Errore di accesso HTTP APIs

IMPORTANTE: il presente articolo è stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l’obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre è perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilità per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualità della traduzione.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 820729
Sommario
In questo articolo vengono descritte le funzionalità di registrazione degli errori di APIs HTTP.

Alcuni errori che si verificano in un'applicazione basata su HTTP vengono automaticamente gestiti dall'API HTTP invece di essere passati a un'applicazione per la gestione. Questo comportamento si verifica perché la frequenza di tali errori in caso contrario potrebbe saturare un log eventi o un gestore dell'applicazione.

Gli argomenti seguenti descrivono i vari aspetti della registrazione degli errori dell'API HTTP.
  • Configurare l'API HTTP errorlogging
    Controllo impostazioni del Registro di sistema dall'API HTTP registra gli errori, themaximum consentito di dimensione dei file registro e il percorso dei file di registro.
  • Formato di APIerror di HTTP registra
    L'API HTTP crea file di registro conformi con convenzioni dei file registro cospicua Wide Web Consortium (W3C). È possibile utilizzare gli strumenti standard per analizzare i file di registro. Tuttavia, diversamente dai file di log W3C, il file di registro di API HTTP eseguire notcontain i nomi delle colonne.
  • Tipi di errori registrati dall'API HTTP
    L'API HTTP registra molti errori comuni.
Risoluzione

Configurare la registrazione degli errori dell'API HTTP

Tre valori del Registro di sistema una chiave HTTP \Parameters controllano la registrazione degli errori dell'API HTTP. Queste chiavi si trovano nella seguente chiave del Registro di sistema:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Nota Il percorso e il formato dei valori di configurazione potrebbe cambiare nelle versioni successive del sistema operativo Windows.

È necessario disporre di credenziali di amministratore/locale sistema per modificare i valori del Registro di sistema e per visualizzare o modificare i file di registro e la cartella che li contiene.

I valori del Registro di sistema le informazioni di configurazione viene letta quando si avvia il driver API HTTP. Pertanto, se si modificano le impostazioni, è necessario arrestare e riavviare il driver per leggere i nuovi valori. A tale scopo, digitare i seguenti comandi di console:
net stop http
net start http
La seguente convenzione di denominazione viene utilizzata per denominare i file di registro:
httperr + numero di sequenza + log
Esempio: httperr4.log
File di registro sono sostituiti quando raggiungono la dimensione massima che specifica il valore del Registro di sistema ErrorLogFileTruncateSize . Questo valore non può essere inferiore a un megabyte (MB).

Se la configurazione della registrazione degli errori non è valida oppure qualsiasi tipo di errore si verifica durante l'API HTTP è scrittura ai file di registro, l'API HTTP utilizza la registrazione degli eventi per notificare gli amministratori che non è in corso la registrazione degli errori.

Nella tabella seguente sono descritti i valori di configurazione del Registro di sistema.
Valore del Registro di sistemaDescrizione
EnableErrorLoggingDWORD che è possibile impostare su TRUE per abilitare la registrazione di errori o su FALSE per disattivarlo. Il valore predefinito è TRUE.
ErrorLogFileTruncateSizeDWORD che specifica la dimensione massima di un file di log di errore, in byte. Il valore predefinito è un MB (0x100000).

Nota Il valore specificato non può essere inferiore al valore predefinito.
ErrorLoggingDirUna stringa che specifica la cartella in cui l'API HTTP inserisce i file di registrazione.

L'API HTTP crea una sottocartella HTTPERR nella cartella specificata e quindi memorizza i file di registro nella sottocartella. Questa sottocartella e i file di log ricevono le stesse impostazioni di autorizzazione. L'amministratore e l'account di sistema locale hanno accesso completo. Altri utenti non hanno accesso.

Di seguito è la cartella predefinita per la cartella non è specificata nel Registro di sistema:
%Systemroot%\System32\LogFiles

Nota Il valore di stringa ErrorLoggingDir deve essere un percorso locale completo. Tuttavia, può contenere % SystemRoot %. Impossibile utilizzare un'unità di rete o una condivisione di rete.

Torna all'inizio

Formato dei registri errori dell'API HTTP

In genere, i file di registro errori dell'API HTTP hanno lo stesso formato come registri errori W3C, ad eccezione del fatto che i file di registro errori dell'API HTTP non contengono intestazioni di colonna. Ogni riga di un registro errori dell'API HTTP è registrato un errore. I campi visualizzati in un ordine specifico. Un singolo carattere di spazio (0x0020) separa ogni campo dal campo precedente. In ogni campo, segni più (0x002B) sostituiscono spazi, tabulazioni e caratteri di controllo non stampabili.

Nella seguente tabella identifica i campi e l'ordine dei campi in un record di log di errore.
CampoDescrizione
DataIl campo Data segue il formato W3C. In questo campo è basato sul tempo universale coordinato (UTC). Il campo Data è sempre di dieci caratteri sotto forma di YYYY-MM-GG. Ad esempio, 1 maggio 2003 è espressa come 2003-05-01.
OraIl campo ora segue il formato W3C. Questo campo è basato su UTC. Il campo ora è sempre otto caratteri sotto forma di MM:HH:SS. Ad esempio, le 17.30 (UTC) è espressa come 17:30:00.
Indirizzo IP clientL'indirizzo IP del client interessato. Il valore in questo campo può essere un indirizzo IPv4 o IPv6. Se l'indirizzo IP del client è un indirizzo IPv6, l'indirizzo è incluso anche il campo di ScopeId.
Porta del clientIl numero di porta per il client interessato.
Indirizzo IP del serverL'indirizzo IP del server interessato. Il valore in questo campo può essere un indirizzo IPv4 o IPv6. Se l'indirizzo IP del server è un indirizzo IPv6, l'indirizzo è incluso anche il campo di ScopeId.
Porta serverIl numero di porta del server interessato.
Versione protocolloLa versione del protocollo in uso.

Se la connessione non è stata analizzata sufficientemente todetermine la versione del protocollo, viene utilizzato un trattino (0x002D) come un placeholderfor il campo vuoto.

Se il numero di versione principale o il numero di versione secondaria analizzato isgreater di o uguale a 10, la versione viene registrata come HTTP /?.?.
VerboLo stato di verbo che l'ultima richiesta analizzata passate. Sono inclusi i verbi sconosciuti, ma tutti i verbi di più di 255 byte vengono troncati a questa lunghezza. Se un verbo non è disponibile, viene utilizzato un trattino (0x002D) come segnaposto per il campo vuoto.
CookedURL + QueryL'URL e le query che è associata ad esso sono registrati come unico campo separato da un punto interrogativo (0x3F). Questo campo viene troncato alla dimensione massima pari a 4.096 byte.

Se questo URL è stato analizzato ("cotte"), esso viene registrato con conversione pagina codice locale e viene considerato come un campo di Unicode.

Se questo URL non è stato analizzato ("cotte") in thetime di registrazione, verrà copiato esattamente, senza conversione Unicode.

Se l'API HTTP non può analizzare questo URL, un hyphen(0x002D) viene utilizzato come segnaposto per il campo vuoto.
Stato protocolloLo stato del protocollo non può essere maggiore di 999.

Se lo stato del protocollo della risposta a un requestis disponibili, viene registrato questo campo.

Se lo stato del protocollo non è disponibile, un hyphen(0x002D) viene utilizzato come segnaposto per il campo vuoto.
SiteIdNon utilizzato in questa versione dell'API HTTP. In questo campo viene sempre visualizzato un trattino (0x002D) di segnaposto.
Enunciazione di erroreQuesto campo contiene una stringa che identifica il tipo di errore viene registrato. Mai, questo campo viene lasciato vuoto.
Nome della codaIl nome della coda di richiesta.
Le seguenti righe di esempio sono da un registro errori dell'API HTTP:
2002-07-05 18:45:09 172.31.77.6 2094 172.31.77.6 80 HTTP/1.1 GET /qos/1kbfile.txt 503 – ConnLimit 2002-07-05 19:51:59 127.0.0.1 2780 127.0.0.1 80 HTTP/1.1 GET /ThisIsMyUrl.htm 400 – nome host 2002-07-05 19:53:00 127.0.0.1 2894 127.0.0.1 80 HTTP/2.0 GET / 505 - Version_N/S 2002-07-05 20:06:01 172.31.77.6 64388 127.0.0.1 80-----Timer_MinBytesPerSecond
Torna all'inizio

Tipi di errori registrati dall'API HTTP

L'API HTTP registra le risposte di errore al client, timeout di connessione, richieste orfane e connessioni interrotte sono gestite in modo non corretto.

Di seguito sono elencati i tipi di errori registrati dall'API HTTP:
  • Risposte ai client L'API HTTP invia una risposta di errore a un client, ad esempio, un errore 400 è causato da un errore di analisi dell'ultima richiesta ricevuta. Dopo che l'API HTTP invia la risposta di errore, la connessione viene chiusa.
  • Timeout della connessione L'API HTTP timeout di una connessione. Se una richiesta è in sospeso la richiesta viene utilizzata per fornire ulteriori informazioni su stata persa la connessione nel registro errori di timeout della connessione quando il.
  • Richieste di isolati Un processo in modalità utente interrompe improvvisamente mentre vi sono ancora in coda le richieste indirizzate a tale processo. L'API HTTP Registra richieste orfane vengono registrate nel log degli errori.
Tipi di errori specifici sono descritti nelle stringhe Enunciazione visualizzate sempre come l'ultimo campo di ogni riga di errore. Nella tabella seguente identifica le frasi di motivo API HTTP.
Enunciazione di erroreDescrizione

AppOfflineSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché gli errori dell'applicazione ha causato l'applicazione da utilizzare offline.
AppPoolTimerSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché il processo del pool di applicazioni è troppo occupato a gestire la richiesta.
AppShutdownSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché l'applicazione arrestata automaticamente in risposta a criteri dell'amministratore.
BadRequestSi è verificato un errore di analisi durante l'elaborazione di una richiesta.
Client_ResetLa connessione tra il client e il server è stato chiuso prima che la richiesta può essere assegnata a un processo di lavoro. La causa più comune di questo comportamento è che il client in modo anomalo chiude la connessione al server.
Connection_Abandoned_By_AppPoolUn processo di lavoro dal pool di applicazioni ha chiuso inaspettatamente o orfani una richiesta in sospeso chiudendo il relativo handle.
Connection_Abandoned_By_ReqQueueUn processo di lavoro dal pool di applicazioni ha chiuso inaspettatamente o orfani una richiesta in sospeso chiudendo il relativo handle. Specifiche per Windows Vista e versioni successive e Windows Server 2008 e versioni successive.
Connection_DroppedLa connessione tra il client e il server è stato chiuso prima che il server può inviare il pacchetto di risposta finale. La causa più comune di questo comportamento è che il client in modo anomalo chiude la connessione al server.
Connection_Dropped_List_FullL'elenco di connessioni interrotte tra client e il server è pieno. Specifiche per Windows Vista e versioni successive e Windows Server 2008 e versioni successive.
ConnLimitSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché è stato raggiunto o superato il limite di connessioni a livello di sito.
Connections_RefusedLa memoria NonPagedPool del kernel è diventata inferiore a 20MB e HTTP. sys ha interrotto la ricezione di nuove connessioni
DisabilitatoSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché un amministratore ha preso l'applicazione non in linea.
EntityTooLargeUn'entità ha superato la dimensione massima consentita.
Valore FieldLengthÈ stato superato un limite di lunghezza di campo.
Operazione non consentitaUn elemento non consentito o una sequenza rilevata durante l'analisi.
IntestazioneSi è verificato un errore di analisi in un'intestazione.
Nome hostSi è verificato un errore di analisi durante l'elaborazione di un nome host.
InternoSi è verificato un errore interno del server (errore HTTP 500).
Invalid_CR/LFSi è verificato un ritorno a capo non valido o avanzamento riga.
LengthRequiredUn valore di lunghezza obbligatorio manca.
N/DSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché si è verificato un errore interno (ad esempio un errore di allocazione di memoria o conflitto elenco prenotazione URL).
N / ISi è verificato un errore non implementato (errore HTTP 501) o si è verificato un errore di servizio non disponibile (errore HTTP 503) a causa di un codifica di trasferimento sconosciuta.
NumeroSi è verificato un errore di analisi durante l'elaborazione di un numero.
Condizione preliminareUna precondizione obbligatoria è manca.
QueueFullSi è verificato un errore di servizio non disponibile (errore HTTP 503). Il servizio non è disponibile perché la coda di richieste di applicazione è piena.
RequestLengthÈ stato superato un limite di lunghezza richiesta.
Timer_AppPoolLa connessione è scaduta perché l'attesa di una richiesta troppo lungo in una coda del pool di applicazioni per un'applicazione server per annullare l'accodamento ed elaborarlo. La durata di timeout è ConnectionTimeout. Per impostazione predefinita, questo valore è impostato a due minuti.
Timer_ConnectionIdleLa connessione è scaduta e rimane inattiva. La durata di ConnectionTimeout predefinita è due minuti.
Timer_EntityBodyLa connessione è scaduta prima che il corpo dell'entità richiesta è arrivato. Quando una richiesta chiaramente ha un corpo dell'entità, l'API HTTP attiva il timer Timer_EntityBody . Inizialmente, il limite di questo timer è impostato sul valore di ConnectionTimeout (in genere due minuti). Ogni volta che un'altra indicazione di dati verrà ricevuti su questa richiesta, l'API HTTP reimposta il timer per consentire la connessione di altri due minuti (o il valore specificato in ConnectionTimeout).
Timer_HeaderWaitLa connessione è scaduta perché l'analisi dell'intestazione di una richiesta richiedeva più tempo rispetto al limite predefinito di due minuti.
Timer_MinBytesPerSecondLa connessione è scaduta perché il client non ha ricevuto una risposta ad una velocità ragionevole. La velocità di invio della risposta era inferiore a quella predefinita di 240 byte al secondo. Questa operazione può essere controllata con la proprietà della metabase MinFileBytesPerSec .
Timer_ReqQueueLa connessione è scaduta perché l'attesa di una richiesta troppo lungo in una coda di pool di applicazioni per un'applicazione server come annullare l'accodamento. La durata di timeout è ConnectionTimeout. Per impostazione predefinita, questo valore è impostato a due minuti. Specifiche per Windows Vista e versioni successive e Windows Server 2008 e versioni successive.
Timer_ResponseRiservato. Attualmente non utilizzato.
Timer_SslRenegotiationLa connessione è scaduta perché Rinegoziazione SSL tra il client e il server ha richiesto più tempo rispetto al timeout predefinito di due minuti.
URLSi è verificato un errore di analisi durante l'elaborazione di un URL.
URL_LengthUn URL ha superato la dimensione massima consentita.
VerboSi è verificato un errore di analisi durante l'elaborazione di un verbo.
Version_N/SSi è verificato un errore di versione non supportata (errore HTTP 505).

Torna all'inizio
Riferimenti
Per ulteriori informazioni su come aggiungere campi ulteriori opzioni di registrazione per la registrazione degli errori HTTP di IIS, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base riportato di seguito:
832975 Proprietà aggiuntive sono disponibili per la registrazione nel file Httperr #. log in IIS 6.0 e IIS 7.0

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 820729 - Ultima revisione: 07/23/2016 01:57:00 - Revisione: 9.0

Windows Server 2008 R2 Standard, Windows Server 2008 R2 Enterprise, Windows Server 2008 Enterprise, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 for Embedded Systems, Windows Server 2012 R2 Foundation, Windows Server 2012 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows 10, Windows 10 Enterprise, released in July 2015, Windows 10 Pro, released in July 2015, Windows 10 Version 1511, Windows 8.1, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows 8, Windows 8 Pro, Windows 8 Enterprise, Windows 7 Professional, Windows 7 Enterprise

  • kbhttphandlers kbhttp kbapi kberrmsg kbinfo kbmt KB820729 KbMtit
Feedback
ody>