Non sono completamente sicuro se questo appartiene a SO, ma non so dove altro chiedere.Windows 8 rimuove apparentemente l'intestazione di codifica del contenuto dalle risposte HTTP compresse
Mentre eseguivo il controllo della velocità di caricamento di un'app Web, ho notato che apparentemente nessuna risposta HTTP (non importa di quale tipo - html, css, js) è compressa con gzip/deflate. Cioè, nessuna intestazione di risposta come "Content-Encoding: gzip" è presente in ogni richiesta e il browser segnala che la risorsa non è compressa.
- testato e confermato in più browser (IE10, 17 FF, Chrome 23, Opera 12.10, Safari 5.x)
- testato e confermato su due macchine che eseguono Windows 8 Pro
- ricontrollato con Fiddler - la risposta non è compresso e non contiene un contenuto-Encoding
- questo non accade solo per le mie applicazioni web, nessun altro sito web che ho provato sembra inviare risposte compressi (a seconda del browser)
- su Windows 7 le risposte arrivare
- HTTPS risposte compressi e con tutte le intestazioni sono compressi
Ecco un esempio delle intestazioni di risposta (nota l'assenza dell'intestazione Content-Encoding):
Ho anche controllato il lato server. Il server esegue Windows Server 2008 R2/IIS 7.5. Ho usato Traccia richieste non riuscite per scoprire cosa sta mandando il server. La risorsa sembra essere compressa:
Inoltre, il server sembra di inviare le intestazioni corrette:
La mia conclusione: deve essere Windows 8 che sta intervenendo qui. Apparentemente modifica le risposte HTTP. Suppongo che Windows 8 stia ricevendo la risposta compressa, la decomprima, rimuova l'intestazione di codifica del contenuto e trasmetta la risposta modificata ulteriormente lungo la pipeline.
Ora le mie domande:
- Qualcuno può confermare che Windows 8 modifica risposte HTTP e che funziona il modo che ho descritto?
- C'è un modo per monitorare o addirittura disabilitare questo comportamento?
Grazie in anticipo per le vostre risposte.
saluti, Andre
Aggiornamento: ho usato Wireshark per vedere ciò che arriva al cliente. Come mi aspettavo, le risorse sono compresse e l'intestazione di codifica del contenuto è ancora presente. L'immagine sotto mostra il protocollo wireshark e in basso a destra la risposta ricevuta da Chrome.
Questo conferma la mia ipotesi che Windows 8 sta intervenendo.
Avete controllato a livello di rete sul client con Wireshark? Forse è il tuo ISP. –
Hai un server proxy o un router di lusso sulla tua rete? Può decomprimere i dati per ispezionarli e inviare la risposta decompressa all'utente. – CodeCaster
Ho eseguito il test con le macchine Windows 8 e Windows 7 esattamente sulla stessa rete, ad es. lo stesso provider internet e la stessa infrastruttura di rete. Cercherò di scavare nel traffico di rete con wireshark e vedere cosa riesco a trovare. –