2012-01-02 12 views
5

Sto usando Magento ver1.6.1. Ho bisogno di cancellare la cache Magento a livello di programmazione.Cancella cache Magento

Mage::app()->getCache()->clean() 

Ho utilizzato il codice precedente ma non ha cancellato la cache.

risposta

14

provare questo

Mage::app()->cleanCache(); 
14

Questo è quello che stai dopo:

try { 
    $allTypes = Mage::app()->useCache(); 
    foreach($allTypes as $type => $blah) { 
     Mage::app()->getCacheInstance()->cleanType($type); 
    } 
    } catch (Exception $e) { 
    // do something 
    error_log($e->getMessage()); 
    } 

Ecco come si dovrebbe fare in modo automatico:

http://mikebywaters.wordpress.com/2011/12/09/automatically-refresh-magento-cache/

+0

Si prega di prendere in considerazione un account twitter per il tuo blog post annunci :) – Zifius

+3

@Zifius appena fatto :) http://twitter.com/mikebywaters –

3

Se sei usando Magento Enterprise (sto usando 1.1 3), il codice sopra riportato nelle risposte di cui sopra non sembra essere sufficiente per svuotare la cache della pagina intera.

Mi ci è voluto un po 'per capire cosa stava succedendo, ma ci sono alcuni metodi che si attivano a seguito di eventi quando si utilizza l'interfaccia web che non verrebbe coperta quando si utilizza il codice sopra. Di importanza critica, è il metodo cleanCache di Enterprise_PageCache_Model_Observer.

Per risolvere, ho aggiunto il seguente codice dopo il codice Magento Guy o Oğuz Çelikdemir.

Enterprise_PageCache_Model_Cache::getCacheInstance() ->clean(Enterprise_PageCache_Model_Processor::CACHE_TAG);

Spero che questo consente di risparmiare qualcuno po 'di tempo!

0

Per risolvere il problema è possibile scrivere uno script di bash che cancella i dati di cache e di sessione.

Magento Cache Syrup - Un semplice script di bash per cancellare cache, sessioni, report e dati temporanei di magento il modo sys-admin per assicurarsi che il sito Web di magento funzioni meglio.

Questo script cancella i dati di cache e sessione dall'installazione di Magento su un server Linux (ubuntu) per assicurarsi che risolva l'errore Magento della pagina bianca vuoto causato dalla cache e dai dati di sessione e si assicuri che il tuo sito Magento funzioni più velocemente. Accedi al tuo server come root e crea un file chiamato magento_cache_syrup.sh e inserisci il seguente codice.

#!/bin/sh 
rm -rf /var/www/sl60/var/cache/* 
rm -rf /var/www/sl60/var/session/* 
rm -rf /var/www/sl60/var/report/* 

Assicurarsi di modificare il percorso nel codice precedente e puntarlo verso l'installazione di Magento. Per i principianti assoluti, è sufficiente sostituire "/ var/www/sl60" con il percorso della directory del tuo sito web Magento.

Dopo aver corretto il percorso si può semplicemente eseguire lo script precedente chiamando dal terminale.

Questo dovrebbe cancellare tutti i dati nella cache, di sessione, TMP e rapporti directory nella tua installazione di Magento. Ma il problema non finisce qui. Dobbiamo assicurarci di farlo ogni volta prima di raggiungere la pagina bianca vuota. Per risolvere questo, abiliteremo un processo cron sul server che esegue lo script bash (magento-cache-syrup) ogni 12 ore.

Creare un cronjob per eseguire lo script bash ogni 12 ore

Problemi correlati