Magento è un popolare sistema di gestione dei contenuti per il commercio elettronico che ci permette di gestire il nostro negozio online in modo flessibile e scalabile. Di seguito spieghiamo come risolvere alcuni degli errori più comuni che possiamo riscontrare con Magento.
Come visualizzare i messaggi di errore generati da Magento
Prima di analizzare i tipi di errori che possiamo incontrare con Magento, dobbiamo sapere come identificarli. Magento è un CMS che gestisce i propri errori e, quando si verifica un problema, mostra un messaggio come il seguente:
Nello screenshot vediamo come Magento mostra un proprio codice di errore. Per sapere a quale messaggio di errore corrisponde, accediamo tramite
FTP al nostro hosting e, all’interno della directory in cui è installato Magento, entriamo in /var/report/.
All’interno di questa cartella troveremo un file che corrisponde al codice mostrato dal sito web. Se leggiamo questo file, vedremo il messaggio di errore che si è verificato.
La maggior parte degli errori generati da Magento deve essere consultata in questo modo per capire cosa sta causando il problema.
Ogni volta che eseguiamo un processo in Magento, è necessario che l’hosting abbia impostato un limite di memoria sufficiente affinché l’applicazione possa completare il processo in corso. Se il limite di memoria è insufficiente, può comparire un errore simile al seguente:
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 1024 bytes) in /usr/home/example.com/web/lib/Varien/Object.php on line 270
Per risolverlo, dobbiamo aumentare il limite di memoria di PHP. Possiamo farlo dall’opzione del pannello di controllo dell’hosting,
Configurare PHP.
Un errore simile a quello del limite di memoria è quello relativo al tempo di esecuzione. Quando Magento tenta di eseguire un processo che richiede più tempo, può comparire un errore come il seguente:
Fatal error: Maximum execution time of 30 seconds exceeded in /usr/home/example.com/web/lib/Zend/Db/Adapter/Abstract.php on line 0
Per correggerlo, accediamo alla sezione
Configurare PHP dal pannello di controllo dell’hosting e aumentiamo il tempo di esecuzione.
3.- Errore nella connessione al database Magento, come tutti i CMS, deve connettersi al database del nostro hosting per funzionare. Se non riesce a connettersi, può apparire il seguente messaggio:
Access denied for user 'usuariMySQL'@'localhost' (using password: YES)";i:1;s:2933:"#0 /usr/home/example.com/web/lib/Zend/Db/Adapter/Pdo/Mysql.php
In questo caso, l’errore si verifica perché i dati di utente e password MySQL non sono configurati correttamente in Magento. Per correggerlo, accediamo tramite
FTP e modifichiamo il file local.xml che si trova in /app/etc/, nella directory in cui è installato Magento.
Aprendolo, troveremo alcune righe di codice.
Dobbiamo verificare che i dati siano corretti. Per conoscere i dati di connessione MySQL del nostro hosting, accediamo alla sezione
MySQL del pannello di controllo dell’hosting.
4.- La pagina non si carica A volte può capitare che il sito con Magento non si carichi in modo casuale. In alcuni browser appare il messaggio di errore ERR_EMPTY_RESPONSE. Quando si verifica questo comportamento può essere dovuto al modulo PHP APC.
Per evitare questo comportamento, possiamo disabilitare l’uso di APC tramite il file
.htaccess.
All’interno del file .htaccess di Magento, che possiamo visualizzare tramite
FTP, aggiungiamo la seguente riga:
php_flag apc.cache_by_default Off
In questo modo il problema non dovrebbe più ripresentarsi.
5.- Le modifiche non vengono applicate Quando applichiamo modifiche in Magento, o anche se correggiamo un errore, può capitare che non visualizziamo alcun cambiamento. Questo accade perché Magento utilizza un sistema di cache e conserva lo stato precedente del sito.
Possiamo rigenerare la cache dall’amministrazione di Magento oppure, se non abbiamo accesso, possiamo connetterci tramite
FTP. Entriamo nella directory in cui è installato Magento e, una volta dentro, accediamo alla cartella /var/.
All’interno di /var/ troveremo una cartella chiamata cache. La eliminiamo.
Una volta eliminata, accediamo nuovamente al sito e le modifiche dovrebbero essere visibili. Allo stesso tempo verrà generata una nuova cartella cache.