RISOLTO [PHP] Limite 2Mb upload file...invalicabile?

Stato
Discussione chiusa ad ulteriori risposte.

jNash

Utente Attivo
1,325
105
Mi sono accorto che di default non posso fare un upload sul mio server (Windows) locale per file più grandi di 2Mb!

Infatti info php (v.56.25) mi dice che i parametri letti su php.ini sono così:

PHP:
max_file_uploads 20 (e sempre quindi ok)
upload_max_filesize 2M
post_max_size 8M

Ho editato il php.ini impostando:

PHP:
upload_max_filesize 6M
post_max_size 10M

ma a quanto pare, pur non dandomi errore dopo aver editato e salvato php.ini e riavviato Wampserver, non accetta questi valori!

Ho provato anche a creare il file .htaccess con i seguenti parametri:

PHP:
php_value upload_max_filesize 10M
php_value post_max_size 12M

ma nulla....

C'è rimedio?

Grazie.
 
Ultima modifica:

jNash

Utente Attivo
1,325
105
Devi modificare il corretto php.ini in base a come php viene chiamato da apache
Ho due php.ini uno per la v.5 e l'altro per la v.7 che però non uso...

Configuration File (php.ini) PathC:\Windows
Loaded Configuration FileC:\wamp64\bin\apache\apache2.4.23\bin\php.ini

Ma sotto C:\Windows non c'è il file e nel percorso successivo c'è solo un collegamento che non vedo dove punta, ma dovrebbe essere C:\wamp64\bin\php\php5.6.25\php.ini
 
Ultima modifica:

jNash

Utente Attivo
1,325
105
Risolto:
Left-Click Wampmanager tray icon -> PHP -> PHP settings
-> upload_max_filesize
-> post_max_size
settati entrambi 16 Mb
Ho letto che è consigliabile aumentare il post rispetto all'upload. Che dite?
Grazie.
 

Tidus88

From another world
Utente Èlite
2,038
1,738
CPU
Ryzen 5600X
Dissipatore
Deepcool GAMMAX 400
Scheda Madre
Asus Prime B450-Plus
HDD
MX-500 500GB
RAM
Ballistix 16GB DDR4 3000Mhz
GPU
RTX 3060Ti Dual ASUS
Audio
Edifier R1280db
Monitor
Hisense H55U7A
PSU
Sharkoon Silentstorm Icewind 550W
Case
Corsair 275R Airflow White
Net
SkyWifi FTTH
OS
Windows 10
Ha senso, perchè se carichi un file da esattamente 16Mb non riuscirai a fare la chiamata (in quanto il payload complessivo, che include il file, sarà superiore ai 16Mb).
 

jNash

Utente Attivo
1,325
105
Ok. Il post l'ho settato 32 Mb.
Ho però un altro problema.
Sto inserendo un controllo che dia errore in caso di superamento del limite impostato dei 16 MB.
Ho provato con il valore error dell'array $_FILES (mi pare che se dà 1 significa proprio l'aver superato il limite del file) e ho provato anche con il valore size dello stesso array, settando 16 milioni.
Però in entrambi i casi non funziona, è come se un "time out" intervenisse prima. Eppure passerano 4-5 secondi dall'upload con file più grande di 16 Mb.
Quando avevo limite 2Mb funzionava. Qualche idea?
 

DispatchCode

Moderatore
Staff Forum
Utente Èlite
2,208
1,845
CPU
Intel I9-10900KF 3.75GHz 10x 125W
Dissipatore
Gigabyte Aorus Waterforce X360 ARGB
Scheda Madre
Asus 1200 TUF Z590-Plus Gaming ATX DDR4
HDD
1TB NVMe PCI 3.0 x4, 1TB 7200rpm 64MB SATA3
RAM
DDR4 32GB 3600MHz CL18 ARGB
GPU
Nvidia RTX 3080 10GB DDR6
Audio
Integrata 7.1 HD audio
Monitor
LG 34GN850
PSU
Gigabyte P850PM
Case
Phanteks Enthoo Evolv X ARGB
Periferiche
MSI Vigor GK30, mouse Logitech
Net
FTTH Aruba, 1Gb (effettivi: ~950Mb / ~480Mb)
OS
Windows 10 64bit / OpenSUSE Tumbleweed
Ok. Il post l'ho settato 32 Mb.
Ho però un altro problema.
Sto inserendo un controllo che dia errore in caso di superamento del limite impostato dei 16 MB.
Ho provato con il valore error dell'array $_FILES (mi pare che se dà 1 significa proprio l'aver superato il limite del file) e ho provato anche con il valore size dello stesso array, settando 16 milioni.
Però in entrambi i casi non funziona, è come se un "time out" intervenisse prima. Eppure passerano 4-5 secondi dall'upload con file più grande di 16 Mb.
Quando avevo limite 2Mb funzionava. Qualche idea?
Hai poi risolto?

Potrebbe essere il tempo di esecuzione dello script anche.
 
  • Mi piace
Reazioni: Mursey

jNash

Utente Attivo
1,325
105
Sì, ho dimenticato di comunicarlo.
Ho aggiunto due controlli, che mi danno errore in caso di dimensione del file superiore a 15 MB:
il primo IF $file['size']>15000000 e poi IF $file['error']==1.
Il controllo lo faccio all'interno del ciclo foreach ($_FILES as $file)
Così facendo il sistema risponde correttamente.
Con le variabili così settate:
-> upload_max_filesize (16Mb)
-> post_max_size (32Mb)
Grazie.
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!