Alt 17.11.2011, 18:10:54   #1 (permalink)
Multitalent
Benutzerbild von joschilein

ID: 9301
Lose-Remote

joschilein eine Nachricht über ICQ schicken
Reg: 05.05.2006
Beiträge: 1.414
joschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehen
Standard Encodings

Ich habe in letzte Zeit mal gesammelt, welche http_accept_encoding-Werte die Besucher mitsenden und möchte die nun bestmöglich unterstützen, d.h. durch eine entsprechende Funktion komprimieren und den passenden Header ausgeben. Dabei habe ich ein paar Fragen:
  • Was ist eigentlich der Unterschied zwischen gzip und x-gzip? Die können ja scheinbar beide durch gzencode() laufen?!
  • Was ist "identity"?
  • Was ist "sdch"?

Wenn ein Client nichts sendet, oder nur etwas was ich nicht in meiner Positivliste habe, sollte ich ihm vermutlich lieber unkomprimierte Daten senden?! Bei ob_gzhandler() klingt es jedenfalls so, als ob dort auch nur geschaut wird, welchen Header der Client gesendet hat und gibt dann gzip, deflate oder "nichts" zurück.

Meine Positivliste sieht momentan so aus
  • gzip => gzencode()
  • x-gzip => gzencode()
  • deflate => gzdeflate()
  • bzip2 => bzcompress()
  • x-bzip2 => bzcompress()


Heute schon gepixelt
joschilein ist offline   Mit Zitat antworten
Gesponsorte Links
Alt 17.11.2011, 18:18:13   #2 (permalink)
return void
Benutzerbild von ice-breaker

ID: 93995
Lose-Remote

ice-breaker eine Nachricht über ICQ schicken
Reg: 27.04.2006
Beiträge: 6.026
ice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehenice-breaker genießt hohes Ansehen
Standard

x-gzip ist der content type für mit gzip komprimierte Dateien, bzw. application/x-gzip.
Also ich würde einfach mit gzip komprimieren, wenn möglich und fertig. Da noch auf bz2 zu prüfen, kann das ein Browser? gzip Stufe 1 und gut ist.


"Die Wahrheit entgeht dem, der nicht mit beiden Augen sieht." -Orici
ice-breaker ist offline   Mit Zitat antworten
Alt 17.11.2011, 19:10:00   #3 (permalink)
Multitalent
Benutzerbild von joschilein

ID: 9301
Lose-Remote

joschilein eine Nachricht über ICQ schicken
Reg: 05.05.2006
Beiträge: 1.414
joschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehenjoschilein genießt hohes Ansehen
Standard

Ich habe mal testweise mit meinem Client-Header rumgespielt und nun werden die Angaben in der Priorität ihrer Reihenfolge unter der Berücksichtung der Whitelist geliefert. Das Script würde auch q-Angaben (-> ähnlich wie bei http_accept_language, haben manche Clients mitgesendet) verarbeiten (= ignorieren).

Der Firefox scheint aber irgendwie nicht so auf die q-Angaben zu stehen. Bei Zeile 2 zu 3 wird ja gzip geliefert und als x-gzip benannt und ich dachte erst das könnte Probleme bereiten. Aber Zeile 4/5 und 8/9 zeigen ja ziemlich deutlich, dass er die q-Angaben eben selbst nicht ignoriert sondern stur kommasepariert interpretiert und dann eben keine Variante "gzip;q=1" in seinen Innereien findet. Na aber wenn das ein paar Clients können, sollen die damit glücklich werden.
nClient-HeaderServer-HeaderBytesLesbarkeit (Firefox)Bemerkung
1gzip, deflategzip2.443OK 
2x-gzip, gzip, deflatex-gzip2.446OK 
3x-gzip, deflatex-gzip2.442Chaos???
4x-gzip;q=1, gzip, deflate;q=0.5x-gzip2.452OK 
5gzip;q=1, deflate;q=0.5gzip2.447Chaos???
6gzip, deflate;q=0.5gzip2.447OK 
7testtext/html7.479OK 
8test, deflatedeflate2.425OK 
9test, deflate;q=0.5deflate2.425Chaos 
(Die unverhofften Byteunterschiede kommen durch die Debugausgabe des jeweils etwas unterschiedlichen Clientheaders auf der Seite)


Heute schon gepixelt
joschilein ist offline Threadstarter   Mit Zitat antworten
Antwort

Gesponsorte Links

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 17:18:06 Uhr.