Velocizzare il vostro sito web Magento in 5 passi

Se dovessi scegliere tra un negozio dove non appena entrato sei subito accolto da una commessa sorridente in grado di indirizzarti verso la cosa giusta per te nel minor tempo possibile, e un altro dove invece il personale non è abbastanza per la clientela  e di conseguenza i tempi di attesa sono molto lunghi… Quale sceglieresti?

La risposta è abbastanza scontata.
La stessa situazione può tranquillamente ripresentarsi in un negozio online, ovvero in un e-commerce. Le statistiche mostrano chiaramente che un sito web veloce migliora di gran lunga l’esperienza del cliente, oltre ad ottenere una migliore indicizzazione sui motori di ricerca. In un mondo così frenetico, con utenti sempre più impazienti e pronti a migrare sui siti dei nostri concorrenti, non possiamo permetterci errori.

Magento è una piattaforma di e-commerce altamente professionale e personalizzabile che offre la possibilità, grazie alla sua modularità e al largo uso del pattern MVC, di espandere agevolmente ogni parte del suo core. L’unica pecca che molto spesso gli viene attributa è quella di risultare lenta nella navigazione; in effetti questa affermazione non è del tutto sbagliata. Magento infatti, necessita di particolari settaggi per riuscire a dare il meglio di sè.

In questa guida scopriremo 5 facili metodi per velocizzare il nostro sito Magento.

Prima di iniziare però testiamo la velocità del nostro sito web su https://gtmetrix.com/ :

prima

Alla fine del tutorial potremo ripetere il test per toccare con mano i risultati ottenuti.

1) Il file .htaccess

Per prima cosa, andiamo a intervenire sul file .htaccess, dove attiveremo la compressione dei .gzip e la disabiliteremo per le vecchie versioni di Mozilla che non la supportano.
Il file .htaccess si trova nella root principale di Magento e serve per comunicare ad Apache alcune delle configurazioni del nostro sistema; inoltre è utilissimo nella generazione dell’url rewritring.
Scarichiamo in locale il file e rinominiamolo per il momento in htaccess.txt (così potremo aprirlo con l’editor di testo): noteremo che il file è pieno di # che rappresentano i commenti. Non dovremo quindi fare altro che togliere il commento dalle opzioni che vogliamo attivare e successivamente rinominare il file in .htaccess e riupparlo sul nostro server.

Togliamo quindi il cancelletto (#) dalle seguenti voci:

php_flag zlib.output_compression on
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary

2) Compressione CSS e Javascript

A questo punto possiamo andare ad intervenire nel nostro backend.
In Magento è buona pratica unire i vari file css e javascript: così facendo le procedure di caricamento risulteranno più agevoli.
Per farlo occorre andare in Sistema -> Configurazione : da qui raggiungiamo l’ultima voce in basso a sinistra ovvero sviluppatore e settiamo il valore “Sì” alle voci “unisci file Javascript” e “unisci file css”.

seconda

3) Abilitare l’uso della cache

Come molti di voi già sapranno, la cache è una memoria che si interfaccia tra lo spazio web e l’utente, consentendo di caricare velocemente le pagine che sono state visualizzate in precedenza. Per attivare l’uso della cache in Magento bisogna intervenire nel backend e precisamente tramite il menù Sistema -> Gestione della cache. Una volta raggiunta quest’area ci basterà selezionare tutte le voci e abilitarle.

terza

4) Installazione GTspeed

Installiamo poi un’utile estensione che possiamo trovare direttamente nel Magento Connect.
Il Magento Connect è l’applicazione nativa di Magento che permette di installare qualsiasi estensione attraverso il nostro backend sfruttando le potenzialità delle estension key.
La piattaforma Magento connect e tutte le sue estensioni sono raggiungibili tramite il sito web https://www.magentocommerce.com/magento-connect/ ; quella che utilizzeremo in questa guida si trova qui.
Per installare un’estensione dovremo copiare la extension key (vedi figura sottostante):

quarta

e incollarla nel nostro backend nella sezione Sistema -> Magento Connect -> Magento Connect Manager, dopo aver effettuato l’accesso con la nostra user e password.

quinta

Non dovremo fare altro che cliccare su install e l’estensione verrà correttamente installata.
Per verificarne l’effettivo funzionamento rechiamoci nel Menù Sistema dove dovremmo visualizzare la relativa voce di menù.

 sesta

Ora non ci resta che entrare all’interno della voce di menù e settare tutte le voci su enable, che ci permetteranno di comprimere ulteriormente i file css e javascript attraverso il processo di Minification, comprimendo quindi il contenuto dell’head.

settima

Questo tool consente inoltre di ottimizzare le nostre immagini: per farlo ci basta andare nella tab sottostante, cliccare su “Update Image Gallery” e successivamente su “Optimize Images”.

ottava

Possiamo anche programmare l’ottimizzazione delle nostre immagini ad intervalli giornalieri, settimanali o mensili, tramite la funzione di Schedule del tool.

nona

5) Hosting e Php.ini

Magento, a differenza di molti altri CMS come ad esempio Joomla!, WordPress, Drupal ecc necessita di un ambiente personalizzato. Potremmo anche installarlo su un hosting non ottimizzato, ma le performance saranno relativamente scarse. Le opzioni più economiche offerte dai provider consentono di ottenere uno spazio su server condiviso con altri siti web. Per raggiungere il massimo occorre passare necessariamente ad un server dedicato che ha dei costi maggiori ma permette di sfruttare la totalità della banda o in alternativa una VPS con risorse dedicate. Inoltre ci consente di settare a nostro piacimento il file php.ini contenente le configurazioni di php. Andiamo quindi a modificare il nostro file php.ini cambiando i valori come segue:

realpath_cache_size = 64k
realpath_cache_ttl = 7200
max_execution_time = 120
max_input_time = 90
memory_limit = 256M
default_socket_timeout = 90
pdo_mysql.cache_size = 2000
output_buffering = 4096
 

Così facendo avremo ottimizzato al massimo l’uso della cache; inoltre, aumentando il max_execution_time eviteremo errori durante l’esecuzione di alcuni script.

Ora possiamo riutilizzare il tool mostrato all’inizio per verificare l’effettiva riuscita delle modifiche effettuate.
dieci

Conclusioni

Come abbiamo visto, attraverso dei processi molto semplici da applicare, abbiamo migliorato di gran lungo le prestazioni del nostro sito web che ora è a prova di qualsiasi cliente, anche quello più impaziente.

E voi quali metodi avete provato per velocizzare il vostro sito web Magento?

Indice
Velocizzare il vostro sito web Magento in 5 passi
Come Realizzare un Template per Magento da Zero
Magento – I template della pagina del prodotto
MAGENTO: I template della pagina shop con la lista dei prodotti

Tag: ,

L'autore

Web Developer con la passione per Magento. Lavora stabilmente in una web agency, ma nel tempo libero adora insegnare le sue conoscenze in ambito web a giovani e motivati studenti; Ha una passione segreta per i CSS e il suo hobby preferito è quello di costruire Layout responsive.

Sito web dell'autore | Altri articoli scritti da

Articoli correlati

Potresti essere interessato anche ai seguenti articoli:

20 commenti

Trackback e pingback

  1. Come Realizzare un Template per Magento da Zero | Your Inspiration Web
    […] Velocizzare il vostro sito web Magento in 5 passi Come Realizzare un Template per Magento da Zero Magento –…
  2. Magento - I template della pagina del prodotto | Your Inspiration Web
    […] Velocizzare il vostro sito web Magento in 5 passi Come Realizzare un Template per Magento da Zero Magento –…
  3. I template per carrello, checkout e account utente | Your Inspiration Web
    […] Velocizzare il vostro sito web Magento in 5 passi […]
  4. Velocità di un sito Internet e SEO | Polodigitale Web Agency
    […] gli elementi che concorrono a degradare le prestazioni devono essere ottimizzati. Parliamo sia di ottimizzazione del template ma anche…