Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    gzip e php (includere javascript compressi

    vado un po' OT dal forum php un attimo per spiegare...

    Sto usando la libreria javascript prototype compressa scaricata da un pacchetto su google code (protopack); è disponibile anche in versione gzip per avere il file più leggero e compresso possibile. Tra le varie alternative d'uso a titolo di esempio vi cito una versione di prototype compressa con i vari tool in presenti in rete (89kb), e la versione con lo stesso file ma compresso per di più anche in formato gzip (39kb). Ho provato ad includere questo file con successo usando queste quattro righe di codice php leggendo sulla documentazione ufficiale:

    Codice PHP:
    $filename "http://www.miosito.com/js/protoculous.js.gz";
    $zp gzopen($filename"r");
    echo 
    gzread($zp,10000);

    gzpassthru($zp);
    gzclose($zp);

    //nell'head della pagina html 
    <script type="text/javascript" src="gz.php"></script> 
    1° dubbio: ho usato il metodo appropriato?
    2° dubbio: gzread() richiede come secondo parametro la lunghezza (in byte mi pare), cosa devo mettere per poter leggere file di qualunque peso (ragionevole comunque)?
    3° dubbio (che si collega al primo): sbirciando nel browser su firebug noto che tra i vari file processati nella risposta del server c'è anche gz.php (che contiene il codice js di prototype perfettamente visibile nel browser in view source), ma, sorpresa, il peso indicato non è quello del relativo file protoculous.gz (39kb). corrisponde invece a 92 kb che è all'incirca quello della versione non compressa con gzip.
    E' giusto che sia così?? o invece ho usato un metodo che vanifica l'uso di un gzip letto con php rispetto al semplice file js?

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    La decompressione la fa il browser in automatico.

    Devi solo includere il file gzippato:

    codice:
    <script type="text/javascript" src="prototype.js.gz"></script>

  3. #3
    Gianiaz, il metodo che mi hai suggerito, di includere direttamente il file zippato nell'src (a parte che non mi funziona), è proprio sconsigliato nella documentazione del pacchetto protopack che sto utilizzando

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    ora non so come è stato fatto questo file, ma se ci pensi, il vantaggio di fornire un file gzippato è che arrivi sul client in formato compresso per diminuire il numero di byte trasferiti.

    Cerca un po' di info su internet riguardo l'argomento e vedrai

    ciao

  5. #5
    cioè mi stai dicendo come giustamente sospettavo che includere il file gizippato stampandolo con le mie piccole righe di codice php è del tutto inutile rispetto al servire l'equivalente file.js non compresso con gzip.

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    si esatto, tu fai il contrario di quello che vogliono fare tutti, prendi un file compresso e lo unzippi.

    In realtà molti fanno la cosa inversa, partendo da file javascript non compressi (perchè magari si è ancora in sviluppo e si continua a modificarli) si crea al volo un file gzip da fornire all'utente.

    Io seguo un metodo che credo sia simile a questo spiegato su html.it

    http://javascript.html.it/articoli/l...zioni-ricche-/

    In realtà non ho mai letto questo articolo, ne avevo seguito uno in inglese, ma mi sembra più giusto fornire un link ad un articolo in italiano.

    ciao

  7. #7
    Avevo dimenticato il post ma ho risolto dubbi e problemi alla grande con una bella classe del solito mitico Andrea Gianmarchi: GZoutput

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.