Sto cercando una soluzione per questo problema . Comprendo il ragionamento per cui l'installazione in quella domanda non funziona, ma cerco di arrivare a una soluzione dove posso farlo funzionare.
L'idea è di consentire il caricamento di file di grandi dimensioni solo su determinati URL. Posso usare un location
blocco per questo, ma il problema è: ho un modello di frontcontroller php:
location ~ \.php {
# ...
fastcgi_pass unix:/tmp/php5-fpm.sock;
}
La mia configurazione totale è simile a:
# ...
http {
# ...
client_max_body_size 512K;
server {
server_name example.com;
root /var/www/example.com/public;
location / {
try_files $uri /index.php?$query_string;
}
location /admin/upload {
client_max_body_size 256M;
}
location ~ \.php {
# ...
fastcgi_pass unix:/tmp/php5-fpm.sock;
}
}
}
A quanto ho capito, verrà applicato solo un blocco di posizione. Quindi, se ho una dimensione di richiesta predefinita di 512 KB, i 256 MB non verranno mai applicati poiché tutte le richieste vengono abbinate attraverso il modello del frontcontroller ~ \.php
.
Ho ragione in questo caso e, in tal caso, cosa può essere configurato in modo tale che i visitatori non possano caricare nulla se non quando caricano admin/upload
?