

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configurazione del server proxy
<a name="java-se-nginx"></a>

Elastic Beanstalk usa [nginx](https://www.nginx.com/) come proxy inverso per mappare l'applicazione al load balancer Elastic Load Balancing sulla porta 80. Elastic Beanstalk fornisce una configurazione nginx predefinita che puoi estendere o ignorare completamente a favore di quella personalizzata.

Per impostazione predefinita, Elastic Beanstalk configura il proxy nginx per inoltrare le richieste alla tua applicazione sulla porta 5000. È possibile sostituire la porta predefinita impostando la [proprietà dell'ambiente](java-se-platform.md#java-se-options) `PORT` sulla porta di ascolto dell'applicazione principale.

**Nota**  
La porta di ascolto della tua applicazione non influisce sulla porta che il server nginx ascolta per ricevere richieste dal load balancer.

**Configurazione del server proxy sulla versione della piattaforma**  
Tutte le AL2 piattaforme AL2 023/ supportano una funzionalità di configurazione proxy uniforme. Per ulteriori informazioni sulla configurazione del server proxy sulle versioni della piattaforma che eseguono AL2 AL2 023/, consulta. [Configurazione del proxy inverso](platforms-linux-extend.proxy.md) 

## Configurazione del proxy su AMI Amazon Linux (precedente ad Amazon Linux 2)
<a name="java-se-nginx.alami"></a>

Se il tuo ambiente Java SE di Elastic Beanstalk utilizza una versione della piattaforma AMI Amazon Linux (precedente Amazon Linux 2), leggi le informazioni aggiuntive presenti in questa sezione.

**Note**  
Le informazioni contenute in questo argomento si applicano solo ai rami della piattaforma basati su Amazon Linux AMI (AL1). AL2I rami della AL2 piattaforma 023/ non sono compatibili con le versioni precedenti della piattaforma Amazon Linux AMI (AL1) e *richiedono impostazioni di configurazione diverse*.
 [Il 18 luglio 2022,](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2022-07-18-linux-al1-retire.html) **Elastic Beanstalk ha impostato lo stato di tutte le filiali della piattaforma basate su Amazon Linux AMI AL1 () come ritirato.** Per ulteriori informazioni sulla migrazione a una ramificazione della piattaforma Amazon Linux 2023 attuale e completamente supportata, consulta [Migrazione dell'applicazione Elastic Beanstalk Linux ad Amazon Linux 2023 o Amazon Linux 2](using-features.migration-al.md).

### Estensione e sovrascrittura della configurazione proxy predefinita — Amazon Linux AMI () AL1
<a name="java-se-nginx.alami.extending"></a>

Per estendere la configurazione nginx predefinita di Elastic Beanstalk, aggiungi file di configurazione `.conf` in una cartella denominata `.ebextensions/nginx/conf.d/` nel bundle di origine dell'applicazione. La configurazione nginx di Elastic Beanstalk include automaticamente i file `.conf` in questa cartella.

```
~/workspace/my-app/
|-- .ebextensions
|   `-- nginx
|       `-- conf.d
|           `-- myconf.conf
`-- web.jar
```

Per sostituire completamente la configurazione nginx predefinita di Elastic Beanstalk, includi una configurazione nel bundle di origine in `.ebextensions/nginx/nginx.conf`:

```
~/workspace/my-app/
|-- .ebextensions
|   `-- nginx
|       `-- nginx.conf
`-- web.jar
```

Se ignori la configurazione nginx predefinita di Elastic Beanstalk, aggiungi al file `nginx.conf` la riga seguente per inserire le configurazioni di Elastic Beanstalk per [Reportistica e monitoraggio dello stato di salute migliorati in Elastic Beanstalk](health-enhanced.md), le mappature automatiche delle applicazioni e i file statici.

```
 include conf.d/elasticbeanstalk/*.conf;
```

La seguente configurazione di esempio dall'[applicazione di esempio Scorekeep](https://github.com/aws-samples/eb-java-scorekeep/) sostituisce la configurazione predefinita di Elastic Beanstalk per utilizzare un'applicazione Web statica dalla sottodirectory `public` di `/var/app/current`, in cui la piattaforma Java SE copia il codice sorgente dell'applicazione. La posizione `/api` inoltra il traffico verso i percorsi di `/api/` dell'applicazione Spring sulla porta 5000. Il traffico restante viene distribuito dall'applicazione Web al percorso root.

**Example**  

```
user                    nginx;
error_log               /var/log/nginx/error.log warn;
pid                     /var/run/nginx.pid;
worker_processes        auto;
worker_rlimit_nofile    33282;

events {
    worker_connections  1024;
}

http {
  include       /etc/nginx/mime.types;
  default_type  application/octet-stream;

  log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" '
                    '"$http_user_agent" "$http_x_forwarded_for"';

  include       conf.d/*.conf;

  map $http_upgrade $connection_upgrade {
      default     "upgrade";
  }

  server {
      listen        80 default_server;
      root /var/app/current/public;

      location / {
      }git pull
      

      location /api {
          proxy_pass          http://127.0.0.1:5000;
          proxy_http_version  1.1;

          proxy_set_header    Connection          $connection_upgrade;
          proxy_set_header    Upgrade             $http_upgrade;
          proxy_set_header    Host                $host;
          proxy_set_header    X-Real-IP           $remote_addr;
          proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
      }

      access_log    /var/log/nginx/access.log main;

      client_header_timeout 60;
      client_body_timeout   60;
      keepalive_timeout     60;
      gzip                  off;
      gzip_comp_level       4;

      # Include the Elastic Beanstalk generated locations
      include conf.d/elasticbeanstalk/01_static.conf;
      include conf.d/elasticbeanstalk/healthd.conf;
  }
}
```