Soluzioni per risolvere l’errore Memory Exhausted su WordPress

Mi è capitato recentemente di incorrere nel tanto temuto errore PHP Memory Exhausted in WordPress, ma con pochi semplici passaggi spiegherò come aumentare il limite di memoria PHP.

Mostrerò un paio di soluzioni semplici da applicare per risolvere il problema dell’errore PHP Memory Exhausted, e utilizzò “256M” come esempio per illustrare i limiti di memoria, però le esigenze specifiche del sito web potrebbero richiedere valori di memoria diversi per cui considera questi esempi come punti di partenza, e monitora le prestazioni del tuo sito regolando questi valori.

Modifica del file wp-config.php

Il core di WordPress si basa su PHP, un linguaggio di scripting lato server. Il file wp-config.php, situato nella directory principale del sito WordPress, svolge un ruolo importante nella configurazione di varie impostazioni, tra cui il limite di memoria PHP: questo limite stabilisce la quantità di memoria del server che WordPress può consumare per eseguire le sue operazioni. La modifica di questo limite in wp-config.php ha un impatto solo sul sito WordPress specifico a cui appartiene, offrendo una soluzione su misura senza influenzare l’intero server o un’altra installazione di WordPress annidata in una sottocartella.

Guida passo passo: Incrementare la Memoria PHP

1. Accesso alla directory principale:

Utilizzando un client FTP o il pannello di controllo del tuo hosting, puoi visualizzare la directory principale della tua installazione di WordPress. La directory principale spesso prende il nome dal tuo sito web o si trova in una cartella denominata public_html o www.

2. Localizza il file wp-config.php:

Aperta la directory principale, trova il file wp-config.php: si tratta di un file molto importante perché al suo interno sono ospitate informazioni essenziali per il funzionamento si un sito WordPress.

3. Edit wp-config.php:

Apri il file wp-config.php utilizzando un editor di testo. Trova una riga che dice “That’s all, stop editing! Happy blogging” e, appena sopra questa riga, inserisci il seguente codice:

define( 'WP_MEMORY_LIMIT', '256M' );

Questa riga indica a WordPress di aumentare il limite di memoria a 256 megabyte. Ovviamente puoi adattare questo limite alle tue esigenze.

PHP Memory Exhausted - Inserimento dello script define( 'WP_MEMORY_LIMIT', '256M' ); prima di /* That's all, stop editing! Happy blogging nel file wp-config.php

4. Salva e carica:

Dopo aver inserito il codice, salva le modifiche nel file wp-config.php: nel File Manager, fai clic sul pulsante “Salva modifiche” o su un’opzione simile per confermare le modifiche; se si utilizza un client FTP, salva il file localmente e poi carica il file aggiornato nella directory principale.

Effetti immediati

Congratulazioni! Hai aumentato la memoria del tuo sito web. Dopo aver apportato queste modifiche, aggiorna il tuo sito WordPress. Probabilmente si vedrà scomparire l’errore PHP Memory Exhausted. Aumentare il limite di memoria PHP in questo modo dà a WordPress più spazio di manovra.

Modifica del file .htaccess

Mentre wp-config.php regola le configurazioni specifiche di WordPress, il file .htaccess influenza il modo in cui il vostro server Apache gestisce vari aspetti del tuo sito web, comprese le impostazioni della memoria PHP. Situato nella directory principale dell’installazione di WordPress, .htaccess è un potente file di configurazione che, tra le altre cose, controlla il modo in cui il server elabora gli script PHP e ti permette quindi di risolvere l’errore PHP Memory Exhausted.

È importante notare che le modifiche apportate al file .htaccess hanno effetto non solo sul sito WordPress principale, ma anche su eventuali sottocartelle o installazioni aggiuntive all’interno della stessa struttura di directory. Se hai un sito WordPress annidato in una sottocartella, le modifiche apportate al file .htaccess dell’installazione principale possono influire sul modo in cui il server elabora il PHP sia per il sito principale che per le eventuali sottocartelle.

Guida passo passo: Modificare il file .htaccess

1. Localizza il file .htaccess:

Accedi alla cartella principale dell’installazione di WordPress dove troverai il file .htaccess; tieni presente che questo file potrebbe essere nascosto, quindi assicurati che il file manager o il client FTP sia configurato per visualizzare i file nascosti.

2. Inserisci il Limite di Memoria:

Apri il file .htaccess utilizzando un editor di testo. La schermata di un file .htaccess sarà la seguente:

Esempio di htaccess

Arriva alla riga dove è scritto # END WordPress, e scrivi questo codice nella riga sopra:

php_value memory_limit 256M

Questa istruzione indica al server di allocare 256 megabyte di memoria per gli script PHP.

PHP Memory Exhausted - L'inserimento dello script "php_value memory_limit 256M" prima di # END WordPress nel file htaccess

4. Salva e carica:

Salva le modifiche apportate al file .htaccess e caricalo nuovamente sul server.

L’aggiunta di questa istruzione farà sì che il server assegni la quantità di memoria specificata per i processi PHP.

Effetti immediati

Una volta modificato il file .htaccess per aumentare il limite di memoria PHP, le modifiche avranno effetto immediato: il sito WordPress otterrà l’accesso alla quantità di memoria specificata, consentendogli di gestire in modo più efficiente le attività ad alta intensità di risorse, e potrà migliorare le prestazioni e ridurre i casi di errore PHP Memory Exhausted.

Utilizzare la funzione ini_set nel file functions.php del tema

Se si ha qualche timore a modificare le configurazioni a livello di server per risolvere l’errore PHP Memory Exhausted, WordPress offre un approccio più localizzato utilizzando la funzione ini_set all’interno del file functions.php del tema.

Guida passo passo: Modificare il file function.php del tema

1. Open functions.php: 

Nella bacheca di WordPress, andare su Aspetto e poi su Editor del tema; qui seleziona il file functions.php per modificarlo.

2. Insert the ini_set code: 

Aggiungi il seguente snippet di codice per impostare il limite di memoria di PHP:

ini_set('memory_limit', '256M');

3. Salva le modifiche:

Salva il file functions.php modificato. Questa soluzione consente di regolare i limiti di memoria in modo specifico per il tema di WordPress.

PHP Memory Exhausted - Il file function.php del tema all'apertura.

Effetti immediati

Queste regolazioni offrono un controllo più graduale sull’utilizzo della memoria PHP, infatti la funzione ini_set all’interno di functions.php personalizza le impostazioni della memoria per il tuo tema WordPress, risolvendo i problemi legati alla memoria e l’errore PHP Memory Exhausted, questo però fino a quando è attivo quel particolare tema.