535
contributi
mNessun oggetto della modifica |
(Parziale riscrittura per buster e bullseye, rimosso supporto per versione < debian 9) |
||
Riga 1: | Riga 1: | ||
{{Versioni compatibili | {{Versioni compatibili|Stretch|Buster|Bullseye}} | ||
__TOC__ | __TOC__ | ||
==Introduzione== | ==Introduzione== | ||
Riga 9: | Riga 9: | ||
<br /> | <br /> | ||
https://developers.google.com/speed/pagespeed/module<br /> | https://developers.google.com/speed/pagespeed/module<br /> | ||
Una volta scaricata l'ultima versione del pacchetto:<ref>[https://www.modpagespeed.com/doc/download] | Una volta scaricata l'ultima versione del pacchetto:<ref>[https://www.modpagespeed.com/doc/download pagina per il download] </ref> | ||
<pre> | <pre> | ||
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb | # wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb | ||
Riga 25: | Riga 25: | ||
Gdebi è comunque consigliato perché scarica e prova a installare le dipendenze prima di installare il pacchetto. | Gdebi è comunque consigliato perché scarica e prova a installare le dipendenze prima di installare il pacchetto. | ||
}} | }} | ||
Il modulo sarà abilitato automaticamente su Apache, ma per attivarlo è necessario riavviare Apache con | |||
<pre> | <pre> | ||
# systemctl reload apache2 | # systemctl reload apache2 | ||
</pre> | </pre> | ||
L'installazione configura anche un file all'interno della directory <code>/etc/apt/sources.list.d</code>, abilitando un [[repository]] esterno per gli aggiornamenti automatici del modulo. | L'installazione configura anche un file all'interno della directory <code>/etc/apt/sources.list.d</code>, abilitando un [[repository]] esterno per gli aggiornamenti automatici del modulo. | ||
==Configurazione== | |||
{{Suggerimento|Nel caso in cui un <code>apt-get update</code> vi fornisca un errore di file Release non firmato a seguito dell'aggiunta del [[repository]] di pagespeed | |||
<pre>W: GPG error: http://dl.google.com/linux/mod-pagespeed/deb stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 78BD65473CB3BD13 | |||
E: The repository 'http://dl.google.com/linux/mod-pagespeed/deb stable Release' is not signed. | |||
N: Updating from such a repository can't be done securely, and is therefore disabled by default. | |||
N: See apt-secure(8) manpage for repository creation and user configuration details.</pre> | |||
Potrete risolvere velocemente il problema aggiungendo le chiavi [[GPG]] dei [[repository]] google. | |||
<pre># cd /etc/apt/trusted.gpg.d | |||
# wget -O google-archive.pub https://dl-ssl.google.com/linux/linux_signing_key.pub</pre> | |||
ed infine aggiornare nuovamente l'elenco dei pacchetti sempre con un <code>apt-get update</code>}} | |||
== Configurazione== | |||
Dopo l'installazione, può essere utile apportare alcune modifiche alla configurazione del modulo, agendo sul suo file di configurazione principale: | Dopo l'installazione, può essere utile apportare alcune modifiche alla configurazione del modulo, agendo sul suo file di configurazione principale: | ||
<pre> | <pre> | ||
Riga 54: | Riga 59: | ||
# ModPagespeedRewriteLevel PassThrough | # ModPagespeedRewriteLevel PassThrough | ||
</pre> | </pre> | ||
Lasciamola commentata, infatti l'opzione predefinita per <code>ModPagespeedRewriteLevel</code> è <code>CoreFilters</code> che permette di avere attivati molti filtri di default che sono quelli ritenuti sicuri per la maggior parte delle applicazioni. Un'altra opzione più aggressiva è <code>TestingCoreFilters</code>, che permette di attivare i filtri sperimentali, ma prima di arrischiarsi è bene testare il sito prima di lasciarli in produzione, mentre <code>PassThrough</code> disabiliterà ogni filtro di default<ref>[https://www.modpagespeed.com/doc/config_filters | Lasciamola commentata, infatti l'opzione predefinita per <code>ModPagespeedRewriteLevel</code> è <code>CoreFilters</code> che permette di avere attivati molti filtri di default che sono quelli ritenuti sicuri per la maggior parte delle applicazioni. Un'altra opzione più aggressiva è <code>TestingCoreFilters</code>, che permette di attivare i filtri sperimentali, ma prima di arrischiarsi è bene testare il sito prima di lasciarli in produzione, mentre <code>PassThrough</code> disabiliterà ogni filtro di default<ref>[https://www.modpagespeed.com/doc/config_filters manuale di configurazione dei filtri]</ref>.<br />I filtri di default aggiunti da <code>CoreFilters</code> sono: | ||
* add_head | *add_head | ||
* combine_css | *combine_css | ||
* combine_javascript | *combine_javascript | ||
* convert_meta_tags | *convert_meta_tags | ||
* extend_cache | *extend_cache | ||
* fallback_rewrite_css_urls | *fallback_rewrite_css_urls | ||
* flatten_css_imports | *flatten_css_imports | ||
* inline_css | *inline_css | ||
* inline_import_to_link | *inline_import_to_link | ||
* inline_javascript | *inline_javascript | ||
* rewrite_css | * rewrite_css | ||
* rewrite_images: implica recompress_images, recompress_jpeg, recompress_png, recompress_webp, convert_gif_to_png, strip_image_color_profile, strip_image_meta_data, jpeg_sampling | *rewrite_images: implica recompress_images, recompress_jpeg, recompress_png, recompress_webp, convert_gif_to_png, strip_image_color_profile, strip_image_meta_data, jpeg_sampling | ||
* rewrite_javascript | *rewrite_javascript | ||
* rewrite_style_attributes_with_url | *rewrite_style_attributes_with_url | ||
Se vogliamo attivare ulteriori direttive lo possiamo fare dopo la riga | Se vogliamo attivare ulteriori direttive lo possiamo fare dopo la riga | ||
# ModPagespeedEnableFilters collapse_whitespace,elide_attributes | # ModPagespeedEnableFilters collapse_whitespace,elide_attributes | ||
Riga 82: | Riga 87: | ||
</pre> | </pre> | ||
Quindi riavviamo Apache per fargli digerire le modifiche. | Quindi riavviamo Apache per fargli digerire le modifiche. | ||
<pre> | <pre> | ||
# systemctl reload apache2 | # systemctl reload apache2 | ||
</pre> | </pre> | ||
== Virtual Host== | ==Virtual Host== | ||
La configurazione precedente applica le stesse impostazioni di ''mod_pagespeed'' a tutti i Virtual Host presenti sul nostro server. È però possibile applicare configurazioni personalizzate per ogni Virtual Host, agendo sul file di configurazione del Virtual Host stesso: | La configurazione precedente applica le stesse impostazioni di ''mod_pagespeed'' a tutti i Virtual Host presenti sul nostro server. È però possibile applicare configurazioni personalizzate per ogni Virtual Host, agendo sul file di configurazione del Virtual Host stesso: | ||
<pre> | <pre> | ||
Riga 109: | Riga 109: | ||
ModPagespeedFileCachePath "/usr/local/apache2/pagespeed/cache/" | ModPagespeedFileCachePath "/usr/local/apache2/pagespeed/cache/" | ||
ModPagespeedGeneratedFilePrefix "/usr/local/apache2/pagespeed/files/" | ModPagespeedGeneratedFilePrefix "/usr/local/apache2/pagespeed/files/" | ||
ModPagespeedRewriteLevel CoreFilters | |||
ModPagespeedEnableFilters collapse_whitespace,elide_attributes | |||
ModPagespeedEnableFilters | ModPagespeedEnableFilters convert_to_webp_animated | ||
ModPagespeedEnableFilters | |||
ModPagespeedEnableFilters remove_comments | ModPagespeedEnableFilters remove_comments | ||
ModPagespeedEnableFilters | ModPagespeedEnableFilters remove_quotes | ||
ModPagespeedEnableFilters | ModPagespeedEnableFilters hint_preload_subresources | ||
</VirtualHost> | </VirtualHost> | ||
</pre> | </pre> |