Desidero personalizzare il valore "client_max_body_size" nella mia configurazione NGINX in modo da poter caricare file di grandi dimensioni nel mio ambiente AWS Elastic Beanstalk.
Risoluzione
Il limite di caricamento dei file predefinito per NGINX è di 1 MB. Per caricare file di dimensioni superiori a 1 MB, aggiorna il valore client_max_body_size.
Importante: M e MB sono espressioni equivalenti per "megabyte". Ad esempio, 2 M equivalgono a 2 MB. Tuttavia, la configurazione NGINX accetta solo "M" come valore di sintassi valido. Non c'è spazio tra il numero e la lettera "M".
Nota: per personalizzare la configurazione proxy predefinita per tutte le versioni delle piattaforme Amazon Linux 2 e Amazon Linux 2023, consulta Estensione delle piattaforme Elastic Beanstalk Linux.
Per configurare il valore client_max_body_size in Amazon Linux 2 e Amazon Linux 2023, completa i seguenti passaggi:
-
Crea un file di configurazione .conf denominato client\ _max\ _body_size.conf che includa quanto segue:
client_max_body_size 50M;
-
Copia il file .conf client\ _max\ _body_size.conf in una cartella denominata .platform/nginx/conf.d/ nel bundle dei sorgenti dell'applicazione.
Nota: la configurazione NGINX di Elastic Beanstalk include automaticamente i file .conf nella cartella .platform. Assicurati di creare questo percorso se il file .conf non esiste nel bundle di origine.
L'esempio seguente mostra la struttura della directory .platform e del file .conf nel file zip dell'applicazione sulla piattaforma Java SE.La cartella .platform deve essere posizionata alla radice del bundle di origine dell'applicazione per tutte le piattaforme Linux. Per ulteriori informazioni sul raggruppamento delle applicazioni, consulta la documentazione della piattaforma.
~/my-app.zip/
|-- web.jar
|-- Procfile
|-- readme.md
`-- .platform/
|-- nginx/ # Proxy configuration
| `-- conf.d/
| `-- client_max_body_size.conf
- Distribuisci la nuova versione dell'applicazione nell'ambiente Elastic Beanstalk.
- Utilizza SSH per accedere all'istanza Amazon Elastic Compute Cloud (Amazon EC2) in esecuzione nell'ambiente Elastic Beanstalk.
- Per verificare che la sintassi della configurazione NGINX sia corretta e che le modifiche apportate al valore client\ _max\ _body\ _size siano applicate, esegui questo comando.
$ sudo nginx -T | egrep -i "client_max_body_size"
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
client_max_body_size 50M;
Informazioni correlate
Crea un bundle di origine dell'applicazione Elastic Beanstalk