Ottimizzazione: Accellera Drasticamente Il Caricamento Di Tutto Il Sito In 2 Minuti

Accellerare sino a 5 volte il caricamento delle pagine web del tuo blog vuol dire;

  • una miglior user experience dei tuoi lettori e quindi più page views
  • minor banda consumata e quindi hosting e server meno costosi
  • migliore affidabilità per i motori di ricerca e quindi miglior posizionamento

Se ti stai chiedendo chissà quali competenze e quale lavoro siano necessari ti dico subito che basteranno 2 minuti una tantum. E’ sufficiente fare in modo che venga compressa prima di essere inviata al browser (escluse le immagini ovviamente, perchè sono già compresse). Uno scherzo del genere può aumentare la velocità di visualizzazione di una pagina web sino al 500%.

Velocita

L’unico requisito è che il sito giri su Apache ma dovremo avere accesso al file .htaccess. Se non lo abbiamo potremo utilizzare un altro trucco a patto che le pagine siano scritte in php.

Comprimere le pagine con .htaccess

Scarica il file .htaccess dalla root del sito (se non c’è crealo) ed aggiungi queste due istruzioni al resto;

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css

<FilesMatch "\.(js|css|html|htm|php|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>

Ricaricalo nella root ed il gioco è fatto.

Basterebbe solo la prima riga in teoria ma la seconda ci permette di specificare il suffisso delle pagine da comprimere. Tutte le pagine a questo punto verranno compresse e verranno caricato molto, molto più velocemente.

Comprimere le pagine con php

Se non puoi modificare l’htaccess puoi comunque velocizzare le pagine a patto che siano in php compilato col supporto di Zlib. Se non sai come fare questa verifica;

  1. crea la pagina php.info
  2. inserisci la riga <?php echo phpinfo(); ?>
  3. caricala sul server e visualizzala

Dovrai trovare una tabella come questa:

zlib

Fatto ciò sarà sufficiente aggiungere all’inizio di ogni pagina che vorrai comprimere il seguente codice;

<?php ob_start( ‘ob_gzhandler’ ); ?>

Tutto qui.

Come verificare se le pagine siano effettivamente compresse

Scarica ed installa  Web Developer Tools per Firefox. Apri la pagina che vuoi testare e lancia Strumenti>Web Developer>Information>View document size.

Ti verrà mostrato il peso degli elementi di pagina in formato non compresso ed in formato compresso. Se non ti verrà mostrata questa differenza vuol dire che la pagina non è compressa.

Ho provato e verificato entrambi i sistemi e funzionano egregiamente. Ecco le due fonti;

[Photo credit: Misha]

Se ti è stato utile potrebbero interessarti anche:

Commenti

  1. davide scrive:

    si in effetti sembra funzionare! 🙂
    mi manca solo da capire xke in locale con easyphp mi da Internal Server Error…

  2. davide scrive:

    bastava aggiungere la condizione

    1. ikaro scrive:

      In effetti potrebbe essere necessario adattare qualcosina in base all’ambiente in cui si opera.

  3. Dass scrive:

    non ho provato a scaricare quella estensione ma pare funzionare… diamine, pare proprio funzionare!
    santo subito!
    qualche anima pia può verificare i miei due siti con quella estensione di firefox?
    http://www.santbaniashram.it
    http://www.santbaniashram.it/dass/
    grazie

    1. ikaro scrive:

      si, te lo confermo.

      Grazie per il “santo” 😀

      Ciao!

  4. d1s4st3r scrive:

    Perchè la cosa funzioni, è indispensabile però che anche il browser supporti la compressione e sia in grado quindi di decomprimere ciò che gli arriva, altrimenti tutto funziona nella solita maniera.

    La compressione gzip può essere attivata anche su altri web/application server, come ad esempio TomCat o Glassfish.

    1. ikaro scrive:

      Sul primo articolo citato come fonte
      http://brightscape.net/compress-your-web-pages-with-mod_deflate/
      scrivono che il metodo che usa mod_deflate è stato testato su IE5, IE6, IE7, Opera 8 & 9, Safari, Camino & FF1 & FF2 ed ha dato esito positivo in tutti i casi.
      Però non l’ho verificato.

  5. Maxgrante scrive:

    Una piccola annotazione, il carico sul webserver cresce.
    Di conseguenza l’applicazione di deflate ha senso solo quando il problema è la banda.

    Se fosse il server invece ottieni effetto inverso.

    Ciao

    1. ikaro scrive:

      In effetti la vedo più in ottica SEO e di usabilità, ovvero non perdere visitatori con connessioni più lente (non pochi) e mostrare ai motori che siamo… affidabili .
      Sempre ovviamente con un occhio al server…

  6. Anonimo scrive:

    Salve, ho cercato di effettuare questa modifica al mio sito ma non succede nulla. MI riferisco in particolare all’aggiunta di codice nel file .htaccess. Ho provato anche a cambiare posizione mettendolo anche al di la del tag ma non succede nulla…
    Il mio server è gestito da aruba il blog è basato su piattaforma wordpress.
    Un piccolo aiutino? grazie!

    1. ikaro scrive:

      Potrebbe darsi che il mod_deflate non è installato. Prova a mandare un email al supporto tecnico per verificarlo.

  7. NBWeb.it scrive:

    Ciao, purtroppo la soluzione usando la libreria “zlib” funziona ma inibisce il funzionamento del plugin All-In-One-Seo-Pack che, non capisco come mai, non riscrive più i titoli…….

  8. Xprenotare scrive:

    Grazie della dritta. Ho scelto la direttiva in htaccess e stranamente funzionava per tutti i files tranne le pagine html e php. Ho chiesto all’hoter se c’era auqlche impedimento e in un paio di giorni l’hanno abilita anche per le pagine

  9. […] httpd.conf, o più semplicemente in .htacces presente nella webroot del tuo sito come descritto in Ottimizzazione: Accellera Drasticamente Il Caricamento Di Tutto Il Sito In 2 Minuti. Attenzione però, le istruzioni nel link riportato valgono solo se il modulo Apache mod_deflate è […]