Domanda

Ho attivato la compressione gzip sul mio sito Web e testato con i seguenti strumenti:

Tuttavia, Firefox e tutte le sue estensioni (Firebug, Yslow e Google Page Speed) affermano di ricevere contenuti non compressi.

text / html è compresso da ob_gzhandler di php, che si preoccupa anche delle intestazioni.

Non uso proxy.

Cosa sto sbagliando?

È stato utile?

Soluzione

Non è proprio la risposta che potresti aspettarti, ma hai provato a non comprimere i dati con PHP, ma con Apache?

Questo può essere fatto usando mod_deflate .

Un paio di cose:

  • significherebbe meno calcoli per PHP
  • significherebbe anche (e questa è la parte più bella ;-) ) in cui i tuoi file CSS / JS potrebbero essere compressi; considerando le dimensioni di questi, al giorno d'oggi, potrebbe non essere una brutta cosa comprimerli ...


Come sidenote: per aiutarci a capire cosa non va nella compressione di PHP, potresti fornire maggiori informazioni? Come l'URL del tuo sito (se è pubblico) e un po 'di codice?


MODIFICA ora che abbiamo l'URL : http://ego.pestaa.hu /

Quando vado a quella pagina, le intestazioni della risposta sono le seguenti:

HTTP/1.x 200 OK
Date: Sat, 01 Aug 2009 21:53:37 GMT
Server: Apache
X-Powered-By: PHP/5.2.6
**Content-Encoding: gzip**
Vary: Accept-Encoding
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html

(utilizzando firefox 3.5 con estensione LiveHTTPHeaders)

I tre siti di test che hai indicato dicono anche che la tua pagina è compressa con gzip.
Hai trovato il problema?

Sei sicuro che questo non provenga dal tuo browser e che non invierebbe la seguente intestazione nella richiesta:

Accept-Encoding: gzip,deflate

MODIFICA dopo l'altra risposta

Citazione dai commenti:

  

la fonte del problema probabilmente non lo è   il mio sito web ma il mio isp / browser / router.   Uno di questi può decomprimere ogni   componente prima che raggiunga interno   processi.

Oh, se il problema non è il tuo sito web, penso di aver capito male la domanda - mi dispiace per questo :-( Pensavo che non sapessi come server gzipare il contenuto dal tuo sito web.
E penso di non essere l'unico, tra

Se il problema non ha nulla a che fare con la configurazione del tuo sito Web, due possibilità:

  • forse una configurazione errata di firefox? Se vai su about: config , cosa dice network.http.accept-encoding ? Per me, è gzip,deflate
  • se il problema proviene dal tuo ISP o qualcosa del genere, non c'è niente che nessuno possa fare ...

Altri suggerimenti

Prova il plug-in Live Http firefox oltre agli altri. Apre una finestra che mostra le intestazioni esatte di richiesta / risposta mentre vanno avanti e indietro, quindi sai senza dubbio qual è la codifica accetta e codifica risposta.

Hai provato ad abilitare gzip in Apache / il tuo server web invece / pure?

  • Sei sicuro di provare gli stessi URL con le estensioni di Firefox?
    • L'uso di ob_gzhandler in PHP comprime l'output delle tue pagine php, ma YSlow e altri ti avvertono anche dei file css / javascript non compressi.
  • Verifica che il browser stia inviando le intestazioni corrette. Un browser di solito invia la codifica " Accept: gzip " intestazione per indicare allo script / server web che accetta contenuto compresso. Gli script di test lo invieranno sicuramente, ma il tuo browser potrebbe non farlo.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top