Configurare php.ini per WordPress: valori consigliati

Cos’è php.ini e perché influisce su WordPress

php.ini è il file di configurazione che stabilisce i limiti e i comportamenti di base di PHP sul server: quanta memoria può usare uno script, quanto può pesare un file caricato, quanto tempo può girare prima di essere interrotto. WordPress, essendo scritto in PHP, eredita direttamente questi limiti: se sono impostati troppo bassi, alcune operazioni (caricare un’immagine pesante, importare un file, salvare una pagina con molti elementi) possono fallire silenziosamente o con un errore poco chiaro, anche se WordPress in sé funziona correttamente.

Limiti troppo bassi impostati di default dall’hosting

La situazione più comune è un hosting che, per contenere il consumo di risorse condivise tra molti siti, imposta di default valori più bassi di quelli che WordPress consiglia per un funzionamento fluido: memoria limitata, tempo massimo di esecuzione breve, dimensione massima di upload ridotta. Il sito funziona per l’uso quotidiano, ma alcune operazioni più pesanti (aggiornamenti, importazioni, pagine con molti elementi) possono fallire proprio a causa di questi limiti.

Hosting che non permette di modificare php.ini direttamente

Una situazione da citare riguarda gli hosting condivisi più economici, che non danno accesso diretto al file php.ini per motivi di sicurezza e stabilità della piattaforma condivisa: in questi casi la modifica va fatta tramite un pannello dedicato o un file alternativo (.user.ini), non editando php.ini a mano.

Valori diversi tra ambiente web e riga di comando

Un caso meno frequente, ma rilevante per chi usa strumenti come WP-CLI, riguarda la possibilità che il server abbia due configurazioni PHP separate — una per le richieste web e una per la riga di comando — con valori diversi tra loro: un’operazione lanciata da riga di comando può quindi comportarsi diversamente dalla stessa operazione avviata dal browser.


Come capire quali valori modificare

Prima di cambiare qualsiasi valore, conviene collegare il sintomo che stai vivendo al parametro PHP realmente coinvolto, invece di alzare tutti i limiti alla cieca.

Riconoscere i sintomi di un limite troppo basso

Un errore “Allowed memory size exhausted” indica che il limite di memoria (memory_limit) è troppo basso per l’operazione in corso. Un caricamento di file che si interrompe senza completarsi, o un messaggio che indica un file troppo grande, riguarda upload_max_filesize e post_max_size. Un’operazione che si blocca a metà su un timer fisso (importazioni, aggiornamenti lunghi) riguarda max_execution_time. Un salvataggio che sembra riuscito ma con alcuni campi mancanti — tipico su pagine costruite con molti elementi (Elementor) o campi personalizzati numerosi (ACF) — riguarda invece max_input_vars, un limite meno noto ma frequente causa di perdita silenziosa di dati.

Verificare i valori attualmente impostati

Puoi vedere i valori attivi in due modi: da WordPress, in Bacheca → Strumenti → Salute del sito → scheda Info, alla voce “Server”, oppure creando temporaneamente un file con solo <?php phpinfo(); ?> caricato via FTP nella root del sito e aprendolo dal browser (da rimuovere subito dopo, perché espone informazioni sul server). Confronta i valori trovati con quelli consigliati nella tabella seguente.

ParametroValore consigliatoSintomo se troppo basso
memory_limit256M“Allowed memory size exhausted” durante operazioni pesanti (import, aggiornamenti, editor con molti plugin attivi)
upload_max_filesize64M (o più per siti con molti media)Caricamento di immagini o file pesanti che fallisce
post_max_sizeUguale o superiore a upload_max_filesize (es. 64M)Upload che fallisce anche se il singolo file rientra nel limite di upload_max_filesize
max_execution_time300Importazioni, esportazioni o aggiornamenti che si interrompono a metà
max_input_vars3000Salvataggio di pagine con molti elementi (Elementor) o campi personalizzati (ACF) che perde alcuni valori senza errore visibile
max_input_time300Invio di form molto lunghi che si interrompe prima del completamento

Configurare php.ini: la procedura più sicura

Il modo corretto di modificare questi valori dipende da come il server esegue PHP: usare il metodo sbagliato non solo non applica la modifica, ma su alcune configurazioni può causare un errore 500 immediato.

Individuare dove modificare i valori

Se il pannello hosting offre uno strumento dedicato (ad esempio “MultiPHP INI Editor” su cPanel, o un selettore equivalente su altri pannelli), è il modo più sicuro: applica i valori senza rischio di errori di sintassi. In assenza di questo strumento, se l’hosting usa PHP in modalità CGI/FastCGI, puoi creare o modificare un file .user.ini nella cartella principale del sito, con la stessa sintassi di php.ini (memory_limit = 256M), e i valori si applicano solo a quella cartella. Evita invece di aggiungere direttive php_value nel file .htaccess se non sei certo che il server usi mod_php: su un server con PHP-FPM (sempre più comune), questa sintassi nel .htaccess causa un errore 500 immediato su tutto il sito.

Impostare i valori consigliati

Nel file corretto individuato al passaggio precedente, imposta i valori della tabella vista sopra, adattandoli se necessario alle esigenze specifiche del sito (ad esempio un upload_max_filesize più alto per un sito che gestisce video o file di grandi dimensioni). Modifica un parametro alla volta se non hai familiarità con questo tipo di configurazione, per poter individuare subito quale modifica, se sbagliata, ha causato un problema.

Verificare che i nuovi valori siano stati applicati

Dopo aver salvato le modifiche, ricontrolla i valori da Salute del sito o da phpinfo() come al passaggio diagnostico: se i valori non risultano cambiati, il file modificato non è quello effettivamente letto dal server per il tuo sito, e va individuato quello corretto insieme all’assistenza dell’hosting.


Hosting condiviso senza accesso diretto a php.ini

Se il tuo hosting non offre né un pannello dedicato né la possibilità di usare .user.ini (situazione tipica di alcuni piani condivisi molto economici), l’unica strada è contattare il supporto dell’hosting e richiedere l’innalzamento specifico dei valori che ti servono, indicando parametro e valore desiderato (ad esempio “memory_limit a 256M”): molti hosting, pur non dando accesso diretto al file, effettuano comunque questo tipo di modifica su richiesta per il singolo account.


Non riesci a risolvere? Intervento tecnico a distanza

Se non sei sicuro di quale file modificare per il tuo hosting specifico, se dopo una modifica il sito mostra un errore 500, o se i valori non sembrano applicarsi nonostante le modifiche fatte, procedere per tentativi su un sito già online rischia di causare un’interruzione più lunga del necessario. In questi casi è possibile richiedere una verifica diretta dell’accesso FTP/SFTP e del pannello hosting: si individua il metodo di configurazione corretto per quel server specifico, si impostano i valori adatti al sito e si verifica che vengano effettivamente applicati.


Domande frequenti sulla configurazione di php.ini per WordPress

Posso impostare memory_limit anche da wp-config.php? Puoi impostare WP_MEMORY_LIMIT e WP_MAX_MEMORY_LIMIT in wp-config.php, ma questi valori non superano mai il limite reale impostato a livello di server: se il server consente al massimo 128M, WordPress non potrà comunque usarne di più anche se richiesto un valore superiore in wp-config.php.

Perché alzare troppo i valori può essere un problema? Valori eccessivamente alti non causano errori immediati, ma su hosting condivisi possono comportare limitazioni imposte automaticamente dal provider per proteggere le risorse comuni, e in generale non risolvono un problema se la causa reale è un’altra (un plugin che consuma memoria in modo anomalo, ad esempio).

Cosa succede se metto php_value in .htaccess su un server con PHP-FPM? Il server restituisce un errore 500 su tutto il sito, perché PHP-FPM non riconosce quella sintassi nel file .htaccess: se questo accade subito dopo una modifica di questo tipo, rimuovi la riga aggiunta per far tornare il sito online.

Come faccio a sapere se il mio hosting usa mod_php o PHP-FPM? Puoi verificarlo nella sezione “Server API” mostrata da phpinfo() o in Salute del sito: se indica “FPM/FastCGI”, evita le direttive php_value in .htaccess e usa invece .user.ini o il pannello hosting.

max_input_vars è davvero così importante? Sì, per siti con pagine costruite con molti elementi (page builder) o form con molti campi: se il limite è troppo basso, il salvataggio sembra riuscire ma alcuni dati oltre il limite vengono scartati senza errore visibile, un problema difficile da notare finché non manca proprio quel contenuto.

Vuoi risolverlo con un intervento diretto? Se non sei sicuro di come configurare correttamente php.ini per il tuo hosting, o hai già avuto un errore dopo un tentativo di modifica, è possibile richiedere una verifica diretta: si individua il metodo corretto per il tuo server e si impostano i valori adatti al sito. → Ricevi assistenza professionale.

Articoli correlati