Incrementare le prestazioni di Apache con mod pagespeed

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 6 "squeeze"

Introduzione

I Google Labs hanno recentemente rilasciato un modulo per il Web server Apache che permette l’ottimizzazione automatica di pagine Web e altre risorse attraverso l’azione di appositi filtri per la riscrittura e fornendo così maggiore velocità di caricamento di tutto il codice HTML, CSS, JavaScript e delle immagini senza rendere necessario alcun intervento manuale sul server. Il modulo non agisce sul codice lato server, quindi non deve essere visto come una possibile soluzione per migliorare script PHP mal riusciti o per velocizzare query SQL non ottimizzate.
Il modulo in questione è distribuito sotto licenza Apache 2.0, ma non è incluso nei repository ufficiali Debian a causa dell'utilizzo di alcune librerie; per una spiegazione delle motivazioni che hanno portato all'esclusione del modulo dai repository Debian si veda ad esempio il seguente bug report.

Installazione

I Google Labs forniscono un pacchetto DEB di mod_pagespeed per Debian Squeeze, sia a 32 bit, sia a 64 bit. Il pacchetto può essere scaricato a questo indirizzo:
http://code.google.com/intl/it-IT/speed/page-speed/download.html
Una volta scaricata l'ultima versione del pacchetto, lo possiamo installare nella consueta maniera:

# dpkg -i mod-pagespeed-*.deb
# apt-get -f install

Quindi abilitiamo il modulo e riavviamo Apache:

# a2enmod pagespeed
# /etc/init.d/apache2 restart

Configurazione

Dopo l'installazione, può essere utile apportare alcune modifiche alla configurazione del modulo, agendo sul suo file di configurazione principale:

# nano /etc/apache2/mods-available/pagespeed.conf

All'inizio del file dovremmo trovarci le righe:

<IfModule pagespeed_module>
SetOutputFilter
 MOD_PAGESPEED_OUTPUT_FILTER
   ModPagespeed on

che indicano che il modulo è attivo. Se al contrario ci fosse la direttiva ModPagespeed off, cambiamola a on per attivarlo.
Poco dopo dovremmo trovare la direttiva:

# ModPagespeedRewriteLevel CoreFilters

Decommentiamola, per attivare i filtri predefiniti del modulo.
Una ventina di righe più sotto dovremmo trovare la direttiva

# ModPagespeedEnableFilters collapse_whitespace,elide_attributes

Decommentiamola, e nel frattempo aggiungiamo alcune altre direttive di ottimizzazione:

   
ModPagespeedEnableFilters combine_css
ModPagespeedEnableFilters rewrite_css,rewrite_javascript
ModPagespeedEnableFilters inline_css,inline_javascript
ModPagespeedEnableFilters rewrite_images
ModPagespeedEnableFilters insert_img_dimensions
ModPagespeedEnableFilters remove_comments
ModPagespeedEnableFilters extend_cache
ModPagespeedEnableFilters remove_quotes

Quindi riavviamo Apache per fargli digerire le modifiche:

# /etc/init.d/apache2 restart