Hangi tarayıcılar `Content-Encoding: gzip`'i işliyor ve hangisinin kodlama kalitesi için özel bir gereksinimi var?


44

Bir "el yapımı" HTTP 1.0, 1.1 sunucusu oluşturuyorum. Son zamanlarda zip lib'i entegre ettim, böylece şimdi kodlanmış gziplenmiş verileri içeri ve dışarı aktarabilirim. Acaba hangi büyük tarayıcıları (canlı olanlar - IE6-IE10, Chrome, FF, vb.) Gönderiyor Accept-Encoding: deflate, gzip, ...ve bu yüzden Content-Encoding: gzipbugün başa çıkabiliyor mu? Hangileri kalite beklentileri gönderiyor? Bunlardan hangisi kodlu gziped post isteği ve çok bölümlü / form verilerini sunucuma gönderebilir?


1
Yine de Kabul-Kodlama başlığına güvenmemeli miydin? Yoksa sadece meraktan mı soruyorsun?
Flimzy

@Flimzy Önceden kodlanmış dosyaları saklıyorsanız (CPU yükünü azaltmak, disk alanı kullanımını azaltmak, sıkıştırma düzeyini artırmak veya tamamen statik bir sunucudan dosya sunmakta olduğunuz için). o zaman Kabul-Kodlama başlığına uyma lüksüne gerçekten sahip değilsiniz. Başlığa uyabiliyorsanız, elbette yapmalısınız, ancak bugünlerde evrensel olarak evrensel olan gzip desteği verildiğinde, web sitenizi gzip desteği gerektirecek şekilde oluşturmak sorun değil.
Hayden Schiff

1
@haydenschiff elbette kabul başlığını hala onurlandırabilirsin. Gzipli verileri saklıyorsanız, kabul etme başlığının gerektirdiğini belirtmek için zaten açmak üzere hazırsınız.
Flimzy

Yanıtlar:


49

Temel olarak günümüzde her tarayıcı deflate / gzip özelliğini destekliyor. Bu sayfa birçok tarayıcıyı ve sürüm numarasını listeler. İşte bir özet artı bazı yeni tarayıcılar:

  • Netscape 6+ (Netscape 4-5 yapar, ancak bazı hataları vardır).
  • Internet Explorer 5.5+ (Temmuz 2000) ve IE 4 ise HTTP / 1.1 olarak ayarlandıysa.
  • Opera 5+ (Haziran 2000)
  • Lynx 2.6+ (bir süre önce 1999)
  • Firefox 0.9.5+ (Ekim 2001)
  • Sonsuza kadar süren Chrome
  • Sonsuza kadar Safari (söyleyebileceğim kadarıyla)

Görebildiğiniz gibi: neredeyse 15 yıl boyunca, tam destek var ve hiç kimse 15 yaşından büyük bir tarayıcı kullanmıyor.


1
+1 Kafam karıştı, çünkü bu varolmayan bir problem gibi görünüyor. @ user1049847 Belki de yukarıdaki sorunuzu genişletmeniz gerekiyor?
Su '

3
Buna ek olarak, hiçbir tarayıcı bir gzip sıkıştırılmış istek göndermez ancak hemen hemen hepsi gzip sıkıştırılmış bir yanıt kabul eder. StackOverflow'ta " Neden tarayıcı gzip isteği gönderemiyor? "
Marco Miltenburg

2
@Su 'haklıdır - gzip'i destekleyen herhangi bir tarayıcı Kabul Kodlama başlığını gönderir, böylece hangi tarayıcıların bunu desteklediğine dikkat etmeniz gerekmez. Size alabileceklerini söylediklerinde gzip gönderin.
Hoşnutsuz Goat

12
Soru alakalı. Amazon S3, MS Azure ve diğerlerinden statik dosyalar kullanıyorsanız (çoğunun yaptığı gibi) kabul kodlama başlığına dinamik olarak yanıt veremezsiniz. Ayrıca anında sıkıştırma, CPU'ya ilave bir yük koyar.
QFDev

1
@QFDev, statik dosyalar sunuyorsanız, gzip olan ve olmayan olan bir sürüm oluşturabilir ve kabul etmeyen kodlama / gzip olup olmadığını kontrol edebilir ve buna göre sunulan statik dosyaları değiştirebilir.
JordanReiter,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.