Come cambiare il maximum file size in PHP

di Lorenzo Neri

Ti stai chiedendo come cambiare il maximum file size in PHP? Non riesci a caricare dei file sul server? Beh, forse il problema è questo: scopriamo come risolverlo in questo articolo!

Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!

Nella mia carriera di sviluppatore web, ho riscontrato spesso e volentieri questo problema: cercavo di caricare un file sul mio server web e non capivo dove stesse il problema, poiché la procedura andava in errore.

Ti sarà capitato di pensare diverse volte che sia stato un tuo errore, codice scritto male, procedure di caricamento errate, eccetera eccetera.

Insomma, alla fine si tratta di un semplice problema di configurazione.

Il file “php.ini”

Il file “php.ini” ti permette di impostare diversi parametri di configurazione.

Tra questi, c’è anche il limite massimo di dimensioni per i file da caricare sul tuo web server.

Quindi, vediamo finalmente dove poter agire per cambiare il famoso maximum file size in un web server che opera tramite PHP.

Sei dai un occhio al file “php.ini”, noterai che ci sono veramente tanti, tantissimi parametri.

Quelli che a noi interessano sono due:

  • upload_max_file_size: serve a impostare la dimensione massima dei file da poter caricare sul server.
  • post_max_size: questo invece, serve ad impostare la dimensione massima dei file che possono essere caricati tramite metodo POST

Dove sta la differenza di questi due parametri?

Il primo, serve ad accettare file ricevuti tramite qualsiasi modalità ed è necessario per dire al server “Hey, per favore accetta richieste di upload che arrivino fino a tale valore.

Il secondo invece, serve per far sì che le richieste HTTP di tipo POST vengano accettate fin tanto che il file contenuto in esse sia al massimo il valore impostato.

Capito questo, vediamo davvero come agire per cambiare il maximum upload file size.

Aprendo il file “php.ini”, tramite le opzioni di ricerca interne al file (per esempio “CTRL+F” oppure “CMD+F”), verifica se esistono già i due parametri esposti prima.

Oppure, se non esistono, aggiungili manualmente tu.

In questo modo:

upload_max_filesize = XY
post_max_size = XY

“Aspetta un attimo Lorenzo, che diavolo sono X ed Y?”

Mi fa piacere che tu me l’abbia chiesto:

  • X rappresenta il numero di byte
  • Y rappresenta il moltiplicatore di questi byte

Sono espressi in formato “umanamente leggibile”.

Per gli amanti del tecnichese intendo dire “human readable” 😀

Quindi, quel numero e quella lettera rappresentano a tutti gli effetti il maximum upload file size.

Detto in termini molto diretti, X può essere qualsiasi numero: se con la virgola usa il punto per separare la parte intera da quella decimale!

E invece Y?

Y devi esprimerlo con una sola lettera, per intenderci:

  • K: lascerà intendere al server che intendi (eheh non ho resistito), KiloByte
  • M: MegaByte
  • G: GigaByte

Per fare degli esempi concreti:

  • 55K: il maximum upload file size sarà di 55KiloByte
  • 115.5M: il maximum upload file size sarà di 115,5MegaByte
  • 12.38G: il maximum upload file size sarà di 12,38GigaByte

Semplice, immediato e facile.

NO! Non abbiamo finito!

Come rendere effettivo il cambiamento del maximum upload file size

Ora che abbiamo impostato finalmente questo benedetto maximum upload file size, dobbiamo far funzionare davvero il tutto.

Come? Riavviando il server.

Bisogna riavviare il server su cui stai operando per rendere effettive queste modifiche, perciò attento!

Dove si trova il file PHP.INI

Se non sapessi dove trovare il file di cui stiamo parlando, di default si trova in questa directory del web server:

 /etc/php/7.4/apache2

Prima di salutarti, considera anche questo: quel “7.4” è la versione di PHP presente sul server, che ovviamente varia a seconda della versione che hai sul tuo!

Continua a scoprire di più con questi articoli!

2 commenti

Giuseppe M. 11/11/2021 - 10:32

Grazie dell’aiuto.
Un appunto: sarebbe ancora più di aiuto specificare dove “di solito” si trova il file PHP.INI, ad esempio ” /etc/php/7.4/apache2″

Rispondi
Lorenzo Neri 11/11/2021 - 12:17

Buongiorno Giuseppe, grazie del tuo commento.

Certamente, è un dettaglio che può tornare utile: lo aggiungerò sicuramente, grazie del tuo supporto e a presto! 😀

Rispondi

Lascia un commento

Questo sito potrebbe fare uso di cookie e siccome l'UE mi obbliga a fartelo presente, eccoti il classico banner dove puoi decidere come gestirli. Accetta Leggi di più