HTTP compressie

Door Martijn B, 17 jaar geleden, 2.715x bekeken

Pak je website in met gzip, en zie de verschillen.

Dus ga snel naar de eerste pagina>>

Gesponsorde koppelingen

Inhoudsopgave

  1. Inleiding
  2. De code

 

Er zijn 12 reacties op 'Http compressie'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
- wes  -
- wes -
17 jaar geleden
 
0 +1 -0 -1
martijn, alst mee moet doen met de wedstrijd, moet je de rules nog even doorlezen ;) 3 paginas. ik ga dit ook even proberen kende het verder nog nie
Martijn B
Martijn B
17 jaar geleden
 
0 +1 -0 -1
De begin pagina telt toch ook mee. Maar ik heb deze tutorial niet gemaakt voor de wedstrijd hoor.
Harmen
Harmen
17 jaar geleden
 
0 +1 -0 -1
Goede uitleg bij het script zelf man, goede tutorial!
Jelmer -
Jelmer -
17 jaar geleden
 
0 +1 -0 -1
Klein, maar fijn en duidelijk! Zeker weer een aanwinst voor PHPhulp.

Mag ik ook even verwijzen naar ob_gzhandler, de standaard gz-outputhandler van PHP. Hier staat naast info over deze functie ook een lading aan 'gebruikersbijdragen' die misschien nog nuttig leesvoer vormen.
Legolas
Legolas
17 jaar geleden
 
0 +1 -0 -1
van de built-in ob_gzhandler pagina:
Quote:
If a browser doesn't support compressed pages this function returns FALSE.
Martijn B
Martijn B
17 jaar geleden
 
0 +1 -0 -1
@Jelmer en Legolas

Ik heb mijn eigen functie gemaakt omdat de ob_gzhandler false terug geeft als de browser geen HTTP compressie ondersteund. Een oplossing heb ik nog nergens kunnen vinden. De compressie verhouding bekijken is trouwens ook wel leuk...
Eris -
Eris -
17 jaar geleden
 
0 +1 -0 -1
Jammer dat hij net 1 pagina te kort is voor de Nationale Bioscoop bon :)
Leo
Leo
17 jaar geleden
 
0 +1 -0 -1
maak er nog een pagina bij ^^

Verder wist ik amper dat dit kon :+
Richard van Velzen
Richard van Velzen
17 jaar geleden
 
0 +1 -0 -1
Kerels, misschien wisten jullie het nog niet, maar als een output-buffer-handling functie false returnt, wordt de originele waarde van de output bewaard.

ob_gzhandler gaat dus prima werken (en doet t bij mij altijd al)

;)

EDIT: misschien willen jullie zelfs bewijs, weet ik veel, maar hier is het in ieder geval;): http://www.jexus.net/test/ob.php
Martijn B
Martijn B
17 jaar geleden
 
0 +1 -0 -1
Het staat in de documentatie dus zal het ook wel zo zijn denk ik. Maar nu weet je wel wat er ongeveer gebeurd in die ob_gzhandler functie ;D.

Een nog betere oplossing is om "zlib.output_compression" te gebruiken.
Deze verstuurd niet alle gegevens in eenkeer maar in delen van 4k, en begint al met versturen bij de eerste uitvoer. Bron: http://nl3.php.net/manual/nl/function.ob-gzhandler.php#30159

Regel 20 van de code heb ik aangepast naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
return false;
?>
 
0 +1 -0 -1
Ik wist niet eens dat dit kon! Bedankt, dit scheelt een hoop sites die ik beheer een hoop dataverkeer!
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Maarten
Maarten
17 jaar geleden
 
0 +1 -0 -1
pas wel op met het feit dat IE er niet goed mee om kan gaan. Er zijn 2 bugs namelijk:

- Bij sommige combinaties van programma's met IE (6.0 SP1 in combinatie met Realplayer bijv soms) kan hij de eerste paar KB niet binnen halen en mist bijv. de CSS.

- Ook dingen zoals javascript in de header die invloed heeft op verder op in het HTML-bestand, hebben problemen. In IE wordt javascript al gestart voordat de gehele pagina gedecodeerd is wat resulteert in javascript-errors. :(

Daarom zie ik meestal af van het gebruik van GZIP, of ik activeer het afhankelijk van de browser (IE niet, en de rest laat ik de gzip_handler zelf uitvogelen).

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. Inleiding
  2. De code

Labels

  • Geen tags toegevoegd.

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.