Configurazione CDN Magento

Il modulo NON rimuove o modifica i files presenti sul tuo server, ne genera una copia e la tiene in memoria servendola su richiesta dal nodo server più vicino all'utente.
I percorsi originali rimango validi e funzionanti, l'attivazione comporterà un livello aggiuntivo di ottimizzazione.

Il modulo attiva la CDN solamente sul frontend, escludendo volutamente l'area backend che presenta diverse incompatibilità ed errori interni se riceve le risorse da domini esterni generando comportamenti imprevisti. 

NON occorre modificare manualmente i vari percorsi in Configurazione > Web (Skin, Media,JavaScript), che è la modalità di integrazione CDN standard in magento, ma la si attiverà/disattiverà con un click dal nostro pannello.

Il modulo è compatibile con i portali multisite permettendo una gestione indipendente per ogni singolo website.

Configurazioni

PRIMA di utilizzare la CDN Artera il tuo dominio dovrà essere aggiunto e abilitato nel nostro pannello.
Se avete un piano "Managed" siete automaticamente abilitati, in caso contrario prima di procedere contattaci per maggiori info aprendo un ticket dalla tua area personale o scrivendo a support@artera.net. 

La CDN Artera, basata su Cloudflare, è una Content Delivery Network di semplicissima configurazione che ti permetterà di velocizzare i tempi di caricamento del tuo sito in pochi passi e, nel medio termine, risparmiare sui costi di hosting e cloud delegando la gestione dei contenuti statici del tuo sito (immagini, fogli di stile CSS e Javascript) ad una rete di server distribuita geograficamente.

Predisporre il fingerprint o una logica di cache busting delle risorse

Il Fingerprint è una funzionalità che può essere utilizzata indipendentemente dall'attivazione della CDN, aggiunge nel nome della risorsa un timestamp, un identificatore numerico temporale, che consente di gestire correttamente l'invalidazione della cache quando un  contenuto statico viene modificato (detto anche cache busting).
Il timestamp cambierà in base alla data di ultima modifica del file consentendo alla CDN e soprattutto al browser dell'utente, che potrebbe avere in cache quella risorsa, di rilevare la modifica e servire la nuova versione aggiornata.

Il modulo magento CDN di Artera integra questa funzionalità.
La sua pagina di configurazione è raggiungibile dal menu del backend in testata Sistema > Configurazione.
Nella pagina Configurazione, menu di sinistra nel box Artera cliccare sulla voce "CDN ", tab Fingerprint Configurazioni.

Se è attivo Fooman Speeder il fingerprint non funzionerà sulle risorse gestite e riscritte da quel modulo.
Questo non sarà un problema perché Fooman implementa nativamente un suo sistema di cache busting e potrete tenere attivi e sfruttare entrambi senza incompatibilità.

Attivazione

PRIMA di attivare la funzionalità, se usate la modalità di rewrite "Nome File", occorre verificare sia abilitato il mod_rewrite e seguire le indicazioni nel paragrafo sotto "[SERVER] Aggiunta regole di rewrite".

FP_abilita.png
Basterà selezionare "Si" e salvare per attivare questa funzionalità. Viceversa selezionare "No" e salvare per disattivarla.

Esempio URL originale: https://www.miodominio.tld/risorsa-statica.js
Esempio URL con FINGERPRINT: https://www.miodominio.tld/risorsa-statica.1534503632.js

Percorsi da mappare

FP_path.png
Esattamente come per la CDN indica su quali cartelle volete venga attivata la funzionalità.
Ad esempio se seleziono "/skin/", solamente alle risorse contenute in quella cartella verrà applicato il fingerprint.
Valore di default: tutte selezionate.

Tipo di rewrite

FP_rewrite.png
Con questa opzione è possibile scegliere il tipo di rewrite da effettuare sul nome del contenuto statico.
Ad esempio se ho un file chiamato risorsa-statica.js :
Nome file = verrà rinominato come risorsa-statica.1537797374.js
Stringa query = verrà rinominato come risorsa-statica.js?v=1537797374
Con la CDN attiva è preferibile scegliere "Nome file" perché maggiormente adatto alle logiche di cache busting implementate internamente dalle CDN stesse.
Valore di default: Nome File.

Estensioni abilitate

FP_estensioni.png
Questo campo serve ad indicare a quali estensioni vuoi venga applicato il fingerprint nel nome.
Ad esempio nel caso volessi gestire solo javascript e fogli di stile basterà lasciare solo le voci "js,css".
Valore di default: js,css,png,jpeg,jpg,gif,ico.

Se vengono aggiunte nuove estensioni rispetto a quelle di default, e usate la modalità di rewrite "Nome File", andranno integrate anche nelle regole di rewrite del paragrafo sotto "[SERVER] Aggiunta regole di rewrite".

[SERVER] Aggiunta regole di rewrite (operazione da effettuare SOLO se il tipo di rewrite scelto è "Nome file")

Aggiungere nella posizione corretta le seguenti regole:

Se Apache: file .htaccess e media/.htaccess

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpe?g|gif|ico)$ $1.$3 [L,NC]

Se Nginx: nella sezione server di www.miodominio.tld

location ~* ^(.+)\.\d+\.(js|css|png|jpe?g|gif|ico)$ {
	try_files $uri $1.$2;<br>
}

Se le regole di rewrite non vengono applicate correttamente la riscrittura fingerprint non funzionerà.
Il sito si visualizzerà male senza grafica ne stili perché le risorse non trovate restituiranno il codice di errore 404.
In caso di problemi disabilitare temporaneamente il modulo e contattarci per un supporto dedicato.

 

Attivazione CDN Artera

Importante, è richiesto che l'SSL sia attivo e che il sito sia navigabile  totalmente in HTTPS perché la CDN Artera funzioni correttamente.

Assicurarsi PRIMA di attivare la CDN che sia implementata una logica di cache busting come spiegato nei paragrafi precedenti.

La pagina di configurazione CDN Artera è raggiungibile dal menu del backend in testata Sistema > Configurazione.
Nella schermata Configurazione menu sinistro nel box Artera cliccare sulla voce "CDN ", tab CDN Configurazioni.

Attivazione

CDN_abilita.png
Basterà selezionare "Si" e salvare per attivare questa funzionalità. Viceversa selezionare "No" e salvare per disattivarla.
Attivando il modulo i contenuti statici del sito verranno gestiti dal dominio https://arteracdn.net/

Esempio URL originale:
 https://www.miodominio.tld/risorsa-statica.js
Esempio URL con CDN: https://arteracdn.net/www.miodominio.tld/risorsa-statica.js

URL personalizzato

CDN_url.png
Questo campo è utile ed andrà compilato solo se si desidera utilizzare un sistema CDN alternativo al nostro.
Le logiche di funzionamento del modulo rimarranno invariate cambierà solamente l'url base di puntamento, che sarà quello inserito nel campo. Ad esempio https://miacdn.miosito.com/

Percorsi da mappare

CDN_path.png
Indica su quali cartelle volete venga attivata la gestione delle risorse tramite CDN.
Ad esempio se seleziono "/media/", solamente le risorse contenute in quella cartella verranno servite dalla CDN.
Valore di default: tutte selezionate.

URL da escludere

CDN_regex.png
Ci sono casi in cui volete che determinate risorse o un particolare pattern url non vengano servite dalla CDN.
Inserendo una o più espressioni regolari separate da ; sarà possibile gestire diverse eccezioni.
Ad esempio se vogliamo vengano esclusi dalla CDN tutti i file di tipo .ico o .gif basterà aggiungere questa regola nella textarea ^.*\.(ico|gif)$; e salvare.

Con CDN e Fingerprint attivati verificare che il sito si visualizzi correttamente e che i path url siano in questo formato:
https://arteracdn.net/www.miodominio.tld/risorsa-statica.1534503632.js

 


Revision #21
Created 20 November 2018 08:59:24 by Claudio Bizzotto
Updated 19 December 2018 10:44:36