Correggi l'errore "Allowed Memory Size of Bytes Exhausted" in WordPress
Questo tutorial riguarda i seguenti argomenti:
L’errore PHP “Allowed Memory Size of Bytes Exhausted” di WordPress è uno dei più diffusi. Certo, questo messaggio di errore sembra inquietante e può essere frustrante da affrontare. Con esso, il tuo sito web WordPress segnala che c’è uno script che utilizza troppa memoria PHP allocata. Di conseguenza, il tuo sito potrebbe mostrare una pagina vuota e diventare inaccessibile, allontanando i tuoi visitatori.
In questo articolo, vedremo cosa causa l’errore “Dimensione memoria esaurita” e come aumentare il limite di memoria PHP per risolverlo, quindi continua a leggere.
Quali sono le cause di “Fatal Error: Allowed Memory Size of Bytes Expanded” in WordPress?
Il codice di WordPress è scritto in PHP, un linguaggio di programmazione lato server utilizzato per creare pagine web dinamiche. Questo codice open source utilizza le risorse del server per eseguire script e richieste per più applicazioni contemporaneamente. Una di queste risorse è la memoria PHP che i server utilizzano per eseguire in maniera corretta le attività. Affinché i server funzionino correttamente, gli amministratori di sistema assegnano una certa quantità di memoria PHP da utilizzare per sito web.
La maggior parte degli host web imposta un limite di memoria predefinito per WordPress, che può essere un valore inferiore al limite di memoria PHP allocato sul server. Questo lascia più “spazio” per aumentare il limite di memoria di WordPress.
Se un plugin o un tema richiede più memoria di quella predefinita, potresti incorrere in un “PHP Fatal error: allowed memory size of …bytes exhausted.” L’errore “Allowed memory size of bytes exhausted tried to allocate …bytes” può anche essere causato da uno script difettoso sul tuo WordPress.
Inoltre, le versioni precedenti di PHP (sotto PHP 5.3) utilizzano più memoria; sono più lenti e vulnerabili agli attacchi. Una vecchia versione di PHP potrebbe causare l’errore “PHP allowed memory size of …bytes exhausted”. Pertanto, ti consigliamo di utilizzare l’ultima versione PHP stabile per il tuo WordPress.
Nota che il tuo sito web potrebbe mostrare la “schermata bianca della morte”; in questa situazione, è necessario abilitare la modalità di debug per visualizzare l’errore effettivo. Se, dopo averlo abilitato, il tuo sito mostra un “Fatal error: allowed memory size of …bytes exhausted”, continua a leggere.
Nella sezione seguente, spiegheremo come correggere o risolvere l’errore di “Allowed memory size of …bytes exhausted” di WordPress.
Come risolvere questo errore di limite di memoria di WordPress?
Se ti imbatti in un errore PHP “Allowed memory size of bytes exhausted”, è probabile che il tuo sito abbia consumato tutta la memoria allocata. A questo punto, probabilmente non sei sicuro di cosa potrebbe causare esattamente il problema. Pertanto, dovresti prima provare ad aumentare il limite di memoria di WordPress. Ci sono diversi modi per farlo, a seconda dell’ambiente di hosting del tuo sito.
Aumenta il limite di memoria PHP
Il PHP memory limit è la quantità di memoria predefinita che il server alloca per l’elaborazione di un sito web. Diversi provider di web hosting possono avere diverse configurazioni del server, sebbene, per impostazione predefinita, la memoria di WordPress sia preimpostata su 64M.
Il valore predefinito per il limite di memoria di WordPress è impostato su 256 MB. Tuttavia, in tutti i server di SiteGround il PHP memory_limit del server è configurato a 768 MB per tutti i piani condivisi, e può essere ulteriormente aumentato per i server Cloud.
Puoi verificarlo da Gestione PHP nel tuo Site Tools dopo aver digitato “memory_limit” nel filtro nella sezione Variabili PHP.
Modifica il wp-config.php
Per aumentare il limite di memoria di WordPress, è necessario modificare il file wp-config.php dell’applicazione. Puoi farlo dal File Manager del tuo hosting, tramite un client FTP dopo aver creato un account FTP, o usando una connessione SSH.
Di norma, dovresti sempre eseguire il backup dei file del tuo sito prima di modificarli nel caso in cui qualcosa vada storto.
Se vuoi modificare il wp-config.php dal tuo File Manager, vai alla sezione Site del tuo Site Tools. Di solito è possibile trovare il file nella cartella public_html, la directory principale predefinita per l’installazione di WordPress. Se hai cambiato la directory di WordPress, il file di configurazione dovrebbe trovarsi in quella cartella.
Fai clic con il pulsante destro del mouse sul file wp-config.php per modificarlo, incolla il seguente frammento di codice all’interno e Salva le modifiche. Assicurati di incollarlo proprio sopra la riga /*Questo è tutto, smetti di modificare! Buona pubblicazione*/.
define( 'WP_MEMORY_LIMIT', '512M' );
Se vedi la riga “define( ‘WP_MEMORY_LIMIT’, ‘256M’ );”, modifica semplicemente il valore a 512M.
Nota che 512M (MB) è il limite di memoria ottimale consigliato per i piani condivisi. Se hai un piano Cloud, puoi personalizzare ulteriormente il limite.
Dopo aver salvato le modifiche, svuota la cache del browser e aggiorna il tuo sito web. L’errore “Allowed memory size of bytes exhausted” dovrebbe essere scomparso.
Controlla il tuo file php.ini
Il file php.ini viene controllato dal server prima di eseguire script PHP poiché fornisce informazioni sui limiti delle risorse. Questo non è un file WordPress core; tuttavia, potresti averlo nella tua cartella principale se hai precedentemente impostato altre variabili PHP. Pertanto, dovresti assicurarti che il valore della memoria PHP non sia inferiore al valore della memoria definito nel tuo wp-config.php. Se questo è il caso, il tuo WordPress non sarà in grado di utilizzare effettivamente il limite di memoria di 512 MB impostato in precedenza.
Puoi trovare il file php.ini in public_html per il tuo sito web e fare clic con il pulsante destro del mouse sul file per modificarlo. Cerca la riga che definisce la variabile memory_limit e imposta il valore di conseguenza.
memory_limit = 512M
Quindi, salva le modifiche e ricarica il tuo sito per vedere se l’errore PHP “Allowed memory size of bytes exhausted” è stato risolto.
Disabilita tutti i plugin
Se hai aumentato il limite di memoria, ma il tuo sito mostra ancora l’errore PHP “Allowed memory size of bytes exhausted”, prova a disabilitare i plugin. Molto probabilmente, un plugin sul tuo sito ha superato il limite di memoria, causando una perdita di memoria. A causa di quel plugin difettoso, il browser mostra l’errore “Allowed memory size exhausted”, impedendo l’accesso al tuo sito web.
Pertanto, disabilitando i plugin di WordPress, dovresti essere in grado di accedere al tuo sito e iniziare ad abilitarli uno per uno per trovare il colpevole.
I clienti SiteGround possono facilmente disabilitare i plugin di WordPress dal loro Site Tools > WordPress > Installa e gestisci.
Cliccando sul pulsante Disabilita tutti i plugin nel menu Azioni e confermando, tutti i plugin di WordPress verranno disattivati.
In alternativa, puoi disabilitare tutti i plugin di WordPress direttamente dal database seguendo i passaggi in questo articolo.
Dopodiché, accedi alla tua bacheca WordPress e inizia ad attivare i tuoi plugin uno per uno. Arriverai eventualmente ad attivare il plugin difettoso e verrà di nuovo visualizzato l’errore. Quando ciò accade, avrai identificato il plugin che ha causato l’errore e dovrai disattivarlo di nuovo per ripristinare l’accesso al tuo sito web.
Per concludere, se stai lottando con l’errore fatale di WordPress “Allowed memory size exhausted” – in primo luogo, prova ad aumentare il limite di memoria. Se non funziona, disabilita i plugin per accedere al tuo sito e inizia a controllare il sito per trovare il responsabile. Nel caso in cui l’errore sia ancora presente, non esitare a contattare il nostro team di supporto in qualsiasi momento.