Vai al contenuto
Indice
WordPress

Aumentare il limite di memoria di WordPress

Traduzione automatica. L'originale in inglese è disponibile.

When WordPress o un plugin si blocca con un errore di esaurimento della memoria, la soluzione è aumentare il limite di memoria PHP, e su KapsuleHost questo è un menu a tendina in KPanel piuttosto che una modifica di file. Questa guida spiega cosa significa l'errore, come modificare il limite, quale valore scegliere e cosa fare quando più memoria non risolve il problema.

Come si presenta l'errore

La forma più chiara è un errore fatale stampato sulla pagina o scritto nel log degli errori:

Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 20480 bytes)

Dividi la cifra in byte per 1.048.576 per leggerla in megabyte: 268435456 corrisponde a 256 MB, 134217728 a 128 MB.

Non si manifesta sempre in modo così chiaro. Lo stesso problema di fondo può comparire come:

  • Una pagina completamente bianca senza alcun messaggio, spesso su una schermata specifica.
  • La bacheca di WordPress che si carica, ma una singola pagina di amministrazione (Plugin, Prodotti, Site Health) che si blocca.
  • Un caricamento di media o un'importazione che si ferma a metà strada.
  • Un errore 500 che compare solo sotto carico.

Prima di modificare qualsiasi cosa, verifica che si tratti davvero di memoria. Apri Impostazioni del sito, poi la scheda PHP, scorri fino a Log degli errori PHP e fai clic su Carica log. Verranno mostrate le ultime 200 voci con un filtro per livello. Un errore di esaurimento della memoria appare come Fatal. Se il log è vuoto, il problema è altrove: prova Schermata bianca di WordPress e Leggere i tuoi log degli errori.

Modificare il limite in KPanel

  1. Accedi a KPanel e fai clic su Siti web nella barra laterale sinistra.
  2. Fai clic sul sito che vuoi modificare.
  3. Nel menu del sito, apri Impostazioni, poi PHP.
  4. Trova la scheda Impostazioni PHP e la riga Limite di memoria.
  5. Scegli un valore dal menu a tendina: 128M, 256M, 512M, 1024M o 2048M.
  6. Fai clic su Salva impostazioni.

Le impostazioni PHP di un sito in KPanel, dove viene scelto il limite di memoria

Non è necessario alcun riavvio e il sito rimane sempre attivo. Le tue impostazioni vengono scritte in un file .user.ini nella radice del tuo sito, che KPanel gestisce per te.

Il nuovo valore non è sempre attivo al caricamento della pagina successiva. Il server memorizza nella cache .user.ini fino a cinque minuti, quindi se il vecchio limite continua a essere segnalato, attendi qualche minuto e controlla di nuovo prima di pensare che la modifica non sia stata applicata.

La stessa scheda controlla altri quattro valori che spesso devono essere regolati insieme alla memoria:

ImpostazioneOpzioniAumentala quando
Limite di memoriada 128M a 2048MErrori fatali di memoria, schermate di amministrazione vuote
Tempo massimo di esecuzioneda 30 a 600 secondiImportazioni, esportazioni e creazioni di report che si fermano a metà
Dimensione massima caricamentoda 16M a 256MUn file zip di un tema o un video viene rifiutato perché troppo grande
Variabili di input massimeda 1000 a 10000Menu di grandi dimensioni, moduli estesi, prodotti con molte varianti

Il valore massimo per i dati POST non viene mostrato perché KapsuleHost lo imposta automaticamente, sempre 1 MB sopra il limite di caricamento, così un modulo che trasporta un file al limite massimo continua a rientrare nel limite.

Quale valore scegliere

Ogni sito KapsuleHost parte da 256M, che è già il doppio del valore predefinito di WordPress ed è sufficiente per la grande maggioranza dei siti. Aumenta solo quando riscontri un errore reale.

SitoLimite consigliato
Sito vetrina o blog con un tema leggero256M è più che sufficiente
Sito con tema page builder e 20 o più plugin256M, poi 512M se gli errori persistono
Negozio WooCommerce, catalogo modesto256M
WooCommerce con abbonamenti, molte varianti o plugin di inventario pesanti512M
Rete multisito o grande sito con iscrizione a pagamentoda 512M a 1024M

Non passare direttamente a 2048M. Un limite molto alto non rende un sito più veloce: permette a un plugin fuori controllo di consumare molte più risorse del server prima di fallire, trasformando una singola pagina danneggiata in un sito lento per ogni visitatore. Aumenta un livello alla volta, riprova e fermati non appena l'errore scompare.

Impostare un limite in wp-config.php

Il menu a tendina di KPanel imposta il tetto massimo del server. WordPress ha due proprie costanti che richiedono memoria fino a quel tetto massimo, e alcune documentazioni ti diranno di impostarle:

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

WP_MEMORY_LIMIT si applica al front end. WP_MAX_MEMORY_LIMIT si applica all'area di amministrazione, che normalmente necessita di più memoria. Aggiungile sopra la riga /* That's all, stop editing! */ in wp-config.php, utilizzando l'editor integrato in Impostazioni, poi Gestore file, oppure tramite SFTP.

Una costante di WordPress non può mai superare il limite del server. Impostare WP_MEMORY_LIMIT su 1024M mentre il menu a tendina di KPanel indica 256M ti dà comunque 256M e una falsa sensazione di aver risolto il problema. Aumenta sempre prima il valore in KPanel.

Per la maggior parte delle persone le costanti non sono necessarie. Imposta il valore in KPanel e lascia stare wp-config.php.

Note su WooCommerce

I negozi sono il motivo più comune per superare i 256M. Controlla la visualizzazione del limite specifica del negozio in WooCommerce, poi Status nel wp-admin: il report di System Status mostra il limite di memoria PHP che riesce a rilevare, un buon modo per confermare che la modifica in KPanel sia effettivamente andata a buon fine.

Aumenta a 512M se utilizzi uno dei seguenti:

  • Prodotti variabili con decine di varianti ciascuno.
  • WooCommerce Subscriptions o un'estensione per prenotazioni.
  • Due o più plugin di gateway di pagamento attivi contemporaneamente.
  • Una sincronizzazione di inventario o contabilità che gira in background.

Pagine di amministrazione di WooCommerce lente o in timeout sono generalmente una combinazione di memoria e tempo di esecuzione. Aumenta contemporaneamente il Tempo massimo di esecuzione a 120 secondi e valuta le opzioni di cache in Configurare WooCommerce.

Controlla anche la tua versione PHP

Se gli errori di memoria sono iniziati subito dopo una modifica di PHP, potrebbe essere coinvolta la versione stessa: un plugin datato può avere perdite di memoria significative su un runtime più recente. La scheda Versione PHP nella parte superiore della stessa scheda mostra cosa sta eseguendo il sito e consente di passare tra PHP 8.4, 8.3, 8.2 e 8.1.

Cambiare versione riavvia il pool PHP del sito, quindi aspettati alcuni secondi di inattività. I dettagli completi sono disponibili in Cambiare la tua versione PHP.

Quando più memoria non risolve il problema

Aumentare il limite due volte senza alcun miglioramento significa che qualcosa sta consumando memoria che non dovrebbe consumare. Procedi in questo ordine:

  1. Esegui un backup. Eseguire un backup prima di tutto, ogni volta.
  2. Trova il plugin. Disattiva i plugin a metà alla volta piuttosto che uno per uno: disattivane metà, ripeti il test, poi dividi ulteriormente la metà che continua a fallire. Puoi anche usare la Modalità sicura dei plugin nella scheda WordPress, poi Plugin, che disattiva tutti i plugin contemporaneamente senza eliminare i dati di alcun plugin.
  3. Testa il tema. Passa temporaneamente a un tema predefinito di WordPress. Un tema che esegue query pesanti a ogni caricamento di pagina produce esattamente questo schema.
  4. Osserva l'operazione, non il sito. Se falliscono solo le importazioni, il problema riguarda il tempo di esecuzione e la dimensione dei batch, non la memoria. Importa in blocchi più piccoli.
  5. Leggi il log. Il Log degli errori PHP nella scheda PHP indica il file e la riga in cui si è esaurita la memoria, il che di solito identifica immediatamente il plugin responsabile.

Se sei ancora bloccato dopo aver provato 512M e un test con i plugin disattivati, invia un'email a support@kapsulehost.com con il dominio del sito, la riga esatta dell'errore fatale e cosa stavi facendo quando si è verificato.

Ti è stato utile?

È un'IA? Legga questa pagina in Markdown

Articoli correlati

Installazione di WordPressWordPress è la piattaforma per siti web più utilizzata al mondo e KapsuleHost rende l'installazione automatica.…WordPress: Da dove iniziareCosa fa KapsuleHost per un sito WordPress, cosa continui a fare tu, e quale guida leggere per ogni compito.…Aggiornamenti automatici di WordPressGli aggiornamenti automatici mantengono il core di WordPress, i plugin e i temi aggiornati senza che tu debba controllare le note di rilascio, e lo fanno in…Gateway di Pagamento per un Negozio WooCommerceIl tab Pagamenti elenca i gateway di pagamento disponibili per il tuo negozio WooCommerce, mostra quali sono installati e quali attivi, e offre installazione e…

Hai ancora bisogno di aiuto?

Chiedi a Kora, che conosce il tuo account, o contatta il nostro team.

ContattaciContatta il supporto