Salta al contenuto

Come modificare il valore max_input_vars

Pubblicato il Aggiornato il

In breve: il valore max_input_vars stabilisce quante variabili di input PHP possono essere elaborate per ciascuna delle sorgenti GET, POST e COOKIE. Se il limite viene superato, PHP genera un avviso e ignora le variabili eccedenti: menu, moduli o impostazioni molto estesi possono quindi essere salvati solo in parte.

Che cosa significa max_input_vars

La direttiva PHP max_input_vars limita il numero di variabili accettate separatamente per $_GET, $_POST e $_COOKIE. Il limite contribuisce anche a ridurre il rischio di richieste costruite con un numero eccessivo di variabili.

Quando una richiesta supera il valore configurato, PHP emette un E_WARNING e tronca le variabili successive. L’applicazione può continuare a mostrare la pagina senza un errore evidente, ma alcuni campi non vengono registrati.

Quando aumentare il valore

Un aumento può essere necessario quando:

  • un menu WordPress con molte voci non viene salvato completamente;
  • un page builder perde gli ultimi campi della configurazione;
  • un plugin importa o salva un modulo con molte opzioni;
  • il registro PHP segnala il superamento del numero massimo di variabili di input.

Prima di intervenire verifica che il problema dipenda davvero da questa direttiva. Un errore di dimensione del corpo POST riguarda invece post_max_size; un file troppo grande può dipendere da upload_max_filesize.

Controlli prima della modifica

  1. Identifica il dominio e la versione PHP effettivamente utilizzata.
  2. Annota il valore attuale di max_input_vars.
  3. Riproduci il problema con un’operazione precisa, per esempio il salvataggio di un menu.
  4. Controlla il registro degli errori PHP all’orario della prova.
  5. Determina il valore richiesto dalla documentazione del CMS o del plugin, evitando aumenti arbitrari.

La modifica deve essere applicata alla configurazione PHP del dominio interessato. Cambiare un’altra versione PHP o un file non letto dal relativo handler non produce alcun effetto.

Modifica con Select PHP Version

Quando il dominio utilizza CloudLinux PHP Selector:

  1. accedi a cPanel;
  2. apri Select PHP Version;
  3. controlla la versione attiva e apri la scheda Options;
  4. individua max_input_vars;
  5. annota il valore precedente e imposta quello necessario;
  6. salva o attendi la conferma automatica dell’interfaccia.

Le voci disponibili dipendono dalla configurazione del piano. Se la direttiva non compare, non aggiungerla in percorsi casuali: verifica prima quale gestore PHP è assegnato al dominio.

Modifica con MultiPHP INI Editor

Se il dominio utilizza MultiPHP, apri MultiPHP INI Editor, seleziona il dominio corretto e modifica la direttiva nella modalità disponibile. In modalità editor può essere rappresentata così:

max_input_vars = 3000

Il valore 3000 è soltanto un esempio: usa il minimo sufficiente per la richiesta dell’applicazione e per la configurazione del piano.

Modificare max_input_vars nella configurazione PHP del dominio
Seleziona il dominio e il gestore PHP corretti, conserva il valore iniziale e aumenta soltanto la direttiva necessaria.

Come verificare il risultato

  1. Riapri la sezione PHP e controlla che il nuovo valore sia ancora presente.
  2. Ripeti esattamente l’operazione che prima perdeva i campi.
  3. Ricarica la configurazione e verifica che anche gli ultimi elementi siano stati salvati.
  4. Controlla il registro PHP per accertare che l’avviso non compaia nuovamente.

Se non cambia nulla, ripristina il valore precedente e verifica post_max_size, limiti specifici del plugin, cache del pannello o errori JavaScript. Aumentare ulteriormente max_input_vars senza una prova non identifica la causa.

Errori da evitare

  • Non impostare valori enormi “per sicurezza”: il limite ha anche una funzione di protezione.
  • Non aggiungere automaticamente php_value in .htaccess: con handler incompatibili può causare un errore 500.
  • Non modificare il file php.ini globale su un account condiviso.
  • Non lasciare file pubblici con l’output completo di phpinfo().
  • Non cambiare contemporaneamente più direttive, altrimenti non saprai quale intervento ha risolto il problema.

Guide Xlogic correlate

Domande frequenti

Che cosa succede quando max_input_vars è troppo basso?

PHP genera un avviso e ignora le variabili che superano il limite. Un menu, un modulo o una configurazione possono quindi essere salvati solo in parte.

Quale valore devo impostare per max_input_vars?

Usa il valore minimo richiesto dall’applicazione e compatibile con il piano. Il numero corretto dipende dalla quantità reale di campi, non esiste un valore universale.

max_input_vars e post_max_size sono la stessa cosa?

No. max_input_vars limita il numero di variabili elaborate; post_max_size limita la dimensione complessiva dei dati POST.

Perché la modifica non viene applicata?

Potresti avere modificato una versione PHP, un dominio o un file di configurazione diverso da quello effettivamente usato. Controlla prima l’handler PHP assegnato al dominio.

Fonti

Come modificare il valore max_input_vars ultima modifica: 2017-09-22T12:14:09+02:00 da Team tecnico Xlogic

Ti è piaciuto questo Post?