Sto caricando jQuery da google sul mio sito (http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js) che è minned e gzip'd. In firefox, il file jquery mostra una richiesta di 19k, ma Safari lo mostra come una richiesta di 56k. Presumo quindi che Safari non lo accetti come un file gzip'd. Qual è l'accordo? Viene da Google e sono abbastanza sicuro che dovrebbe essere gzip'dsafari e gzip
risposta
Ho solo pensato di aggiungere a questo nel caso in cui la gente si imbattesse nella stessa domanda. Dopo aver giocato di più con gli strumenti Dev e guardando le intestazioni di risposta, ho notato che lo Content-Length
mostra effettivamente la dimensione corretta di gzip. Posso solo supporre che in effetti sta ottenendo la versione compressa corretta ma nella finestra principale delle risorse mostra la dimensione non compressa e le intestazioni mostrano la dimensione compressa.
Potrebbe voler dare un'occhiata a this link.
Dopo alcuni scavi ho appreso che non è possibile inviare javascript in Safari con estensione "gz". Deve essere “Jgz”
Così sembra la questione in realtà è con Google servirla come "gz" piuttosto che "Jgz" come Safari vuole.
Questo potrebbe essere vero, ma è irrilevante qui poiché evidentemente lo sta servendo come '.js' considerando l'URL brad fornito. – mercator
vedo almeno due possibilità:
- forse safari non sta inviando l'header HTTP che indica: "Io sono in grado di ricevere gzip"; quell'intestazione è
Accept-Encoding
e il suo valore è generalmentecompress, gzip
- forse Safari indica la dimensione dei dati non compressi?
Avete una sorta di "sniffer di rete", come wireshark(sembra che ci sia la versione per MacOS), per vedere realmente cosa sta succedendo attraverso la rete?
Gave wireshark una breve possibilità, ma ha avuto un sacco di errori sul carico e non ha caricato alcuna interfaccia di rete. Penso che Eric abbia un buon punto anche se questo è incredibilmente frustrante se non posso usare google per servire i file gzip – brad
Peccato :-(Il link @Eric postato parla di qualche tipo di estensione .gz o .jgz; non vedo nessuno di quelli nell'URL che hai dato: ha un'estensione .js - e google che non invia dati gzippati sembra un'idea abbastanza strana, considerando che safari è un browser recente, e che li aiuterebbe a ridurre i costi della banda ... Ancora. .. Se trovi la soluzione, faccelo sapere! –
Ho trovato questo: si NON è possibile utilizzare l'estensione ".gz" quando si servono file CSS o JS compressi su Safari. Si sa come gestire i file gziped, a patto che essi non hanno l'estensione '.gz' (è solo che strano :)
Ecco come servo JS compressi/file CSS per Safari:
- utilizza qualsiasi altra estensione, solo non ".gz" ('.jgz', '.foo' o qualsiasi altra)
- imposta l'intestazione con codifica gzip per le estensioni scelte ('Codifica contenuto: gzip')
- impostare il tipo MIME appropriato: text/javascript o text/css
a tutti gli altri browser non importa quale estensione si utilizza, a patto che si imposta il giusto tipo di contenuto e codifica, quindi questo funziona su tutti i browser.
Ho testato con successo questo con Safari 4.0.4 su Windows XP SP3. E Chrome 4, FF 3.5.5, IE8 e Opera 10.10 su winxp, per la compatibilità cross-browser.
Ho incontrato anche questo problema, mentre cercavo di ottimizzare il tempo di caricamento di un sito web su iOS7 Safari iPad mobile.
- codificato = dimensione del file compresso, dai server
- Decoded = dimensione del file compresso, localmente
- Trasferiti = dimensioni del file non compresso + headers inviati e ricevuti
- Content-Length = file inviato compressi, dal server
Safari ha scelto un modo davvero strano di rappresentare questi numeri nel proprio debugger.
Questo è utile sapere, l'ho scoperto anch'io! Ho pensato che "trasferito" fosse la dimensione di gzip ma che sembra non essere corretto, è la dimensione non compressa che è molto intuitiva . –
- 1. Perché Safari non accetta la compressione GZIP?
- 2. iPhone e gzip
- 3. Spring gzip vs Tomcat gzip
- 4. Heroku Cedro e nginx (gzip)
- 5. Retrofit e OkHttp decodifica gzip
- 6. Come decodificare "Content-Encoding: gzip, gzip" usando curl?
- 7. Utilizzare le risposte GZIP, JSON e JQuery
- 8. Problemi noti con gzip e IE6
- 9. Mvc 4 pacchetti di script e GZip
- 10. Apertura e utilizzo di Safari
- 11. Angolare e cloudfront con Safari
- 12. Heroku push: gzip non standard input in formato gzip
- 13. Unisci file gzip ordinati
- 14. Qt quncompress dati gzip
- 15. Contenuto statico gzip espresso
- 16. decompressione GZIP C# OutOfMemory
- 17. GZip fasci system.web.optimization
- 18. Come abilitare gzip?
- 19. Compressione gzip Web Api
- 20. HttpURLConnection Android: compressione gzip
- 21. Codifica traffico WebSocket (GZip)
- 22. gzip con codeigniter
- 23. AFNetworking Enable GZIP
- 24. supporto gzip in Spark
- 25. Come funziona l'algoritmo GZip?
- 26. NSURLConnection/NSURLRequest supporto gzip
- 27. AppEngine compressione gzip
- 28. OkHttp gzip post body
- 29. jquery border irregolare crollo safari safari
- 30. GWT e HTML5 Video in Mobile Safari
Si spera che, se le stelle si allineano, il file viene memorizzato nella cache dopo la prima volta in cui viene eseguito l'accesso e non viene effettivamente trasmesso dopo. – Nosredna