

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Configuración del servidor proxy
<a name="java-tomcat-proxy"></a>

La plataforma Tomcat utiliza [nginx](https://www.nginx.com/) (el valor predeterminado) o [Apache HTTP Server](https://httpd.apache.org/) como proxy inverso para transmitir las solicitudes del puerto 80 de la instancia al contenedor web Tomcat que está a la escucha en el puerto 8080. Elastic Beanstalk proporciona una configuración de proxy predeterminada que puede ampliar o anular por completo con su propia configuración.

**Configuración del servidor proxy en la versión de su plataforma**  
Todas las AL2 plataformas AL2023/admiten una función de configuración de proxy uniforme. Para obtener más información sobre la configuración del servidor proxy en las versiones de su plataforma que ejecutan AL2023/AL2, consulte[Configuración del proxy inverso](platforms-linux-extend.proxy.md). 

## Configuración del proxy en la plataforma Tomcat de la AMI de Amazon Linux (anterior a Amazon Linux 2)
<a name="java-tomcat-proxy.alami"></a>

Si su entorno Tomcat de Elastic Beanstalk utiliza una versión de la plataforma de la AMI de Amazon Linux (anterior a Amazon Linux 2), lea la información adicional de esta sección.

**Notas**  
La información de este tema solo se aplica a las ramas de plataforma basadas en la AMI de Amazon Linux (AL1). AL2023/las ramas de la AL2 plataforma son incompatibles con las versiones anteriores de la plataforma AMI (AL1) de Amazon Linux y *requieren ajustes de configuración diferentes*.
 [El 18 de julio de 2022,](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2022-07-18-linux-al1-retire.html) **Elastic Beanstalk estableció el estado de todas las ramas de plataforma basadas en la AMI AL1 de Amazon Linux () como retiradas.** Para obtener más información sobre la migración a una ramificación de la plataforma Amazon Linux 2023 actual y totalmente compatible, consulte [Migración de su aplicación de Linux de Elastic Beanstalk a Amazon Linux 2023 o Amazon Linux 2](using-features.migration-al.md).

### Elección de un servidor proxy para su entorno Tomcat — AMI de Amazon Linux () AL1
<a name="java-tomcat-proxy.alami"></a>

Las versiones de la plataforma Tomcat basadas en la AMI de Amazon Linux (anterior a Amazon Linux 2) utilizan [Apache 2.4](https://httpd.apache.org/docs/2.4/) para el proxy de forma predeterminada. Puede elegir usar [Apache 2.2](https://httpd.apache.org/docs/2.2/) o [nginx](https://www.nginx.com/) incluyendo un [archivo de configuración](ebextensions.md) en el código fuente. El siguiente ejemplo configura Elastic Beanstalk para usar nginx.

**Example .ebextensions/nginx-proxy.config**  

```
option_settings:
  aws:elasticbeanstalk:environment:proxy:
    ProxyServer: nginx
```

### Migración de Apache 2.2 a Apache 2.4 — AMI de Amazon Linux () AL1
<a name="java-tomcat-proxy-apache-migrate"></a>

Si la aplicación se desarrolló para [Apache 2.2](https://httpd.apache.org/docs/2.2/), lea esta sección para obtener información sobre la migración a [Apache 2.4](https://httpd.apache.org/docs/2.4/).

A partir de las configuraciones de la versión 3.0.0 de la plataforma Tomcat, que se publicaron con la [actualización de Java con la plataforma Tomcat el 24 de mayo de 2018](https://aws.amazon.com/releasenotes/release-aws-elastic-beanstalk-platform-update-for-the-java-with-tomcat-platform-on-may-24-2018/), Apache 2.4 es el proxy predeterminado de la plataforma Tomcat. Los archivos `.conf` de Apache 2.4 son en su mayoría, pero no todos, compatibles con los de Apache 2.2. Elastic Beanstalk incluye archivos `.conf` predeterminados que funcionan correctamente con cada versión de Apache. Si la aplicación no personaliza la configuración de Apache, tal y como se explica en [Ampliación y anulación de la configuración predeterminada de Apache: AMI de Amazon Linux () AL1](#java-tomcat-proxy-apache), debería migrar a Apache 2.4 sin problemas.

Si la aplicación amplía o anula la configuración de Apache, es posible que tenga que realizar algunos cambios para migrar a Apache 2.4. Para obtener más información, consulte [Upgrading to 2.4 from 2.2](https://httpd.apache.org/docs/current/upgrading.html) en el sitio web de *The Apache Software Foundation*. Como medida temporal, hasta que migre correctamente a Apache 2.4, puede utilizar Apache 2.2 con su aplicación; para ello, incluya el segmento [archivo de configuración](ebextensions.md) en el código fuente.

**Example .ebextensions/ .config apache-legacy-proxy**  

```
option_settings:
  aws:elasticbeanstalk:environment:proxy:
    ProxyServer: apache/2.2
```

Para obtener una solución rápida, también puede seleccionar el servidor proxy en la consola de Elastic Beanstalk.

**Para seleccionar el proxy en el entorno Tomcat en la consola de Elastic Beanstalk**

1. Abra la consola de [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk) y, **en** la lista Regiones, seleccione su. Región de AWS

1. En el panel de navegación, elija **Environments** (Entornos) y, a continuación, elija el nombre del entorno en la lista.

1. En el panel de navegación, elija **Configuración**.

1. En la categoría de configuración **Actualizaciones, supervisión y registro**, seleccione **Edición de**.

1. En **Proxy server (Servidor proxy)**, elija `Apache 2.2 (deprecated)`.

1. Para guardar los cambios, elija **Aplicar** en la parte inferior de la página.

![\[Selección del proxy para un entorno Tomcat en la categoría de configuración de software de la consola de Elastic Beanstalk\]](http://docs.aws.amazon.com/es_es/elasticbeanstalk/latest/dg/images/java-tomcat-proxy-selection.png)


### Ampliación y anulación de la configuración predeterminada de Apache: AMI de Amazon Linux () AL1
<a name="java-tomcat-proxy-apache"></a>

Puede ampliar la configuración de Apache predeterminada de Elastic Beanstalk con archivos de configuración adicionales. Si lo prefiere, puede anular por completo la configuración de Apache predeterminada de Elastic Beanstalk.

**nota**  
Todas las plataformas de Amazon Linux 2 admiten una característica de configuración de proxy uniforme. Para obtener más información sobre la configuración del servidor proxy en las versiones de la plataforma Tomcat que ejecutan Amazon Linux 2, consulte [Configuración del proxy inverso](platforms-linux-extend.proxy.md).
Si va a migrar su aplicación de Elastic Beanstalk a una plataforma de Amazon Linux 2, asegúrese de leer también la información en [Migración de su aplicación de Linux de Elastic Beanstalk a Amazon Linux 2023 o Amazon Linux 2](using-features.migration-al.md).

Para ampliar la configuración de Apache predeterminada de Elastic Beanstalk, añada los archivos de configuración `.conf` a una carpeta con el nombre `.ebextensions/httpd/conf.d` en el paquete de código fuente de su aplicación. La configuración de Apache de Elastic Beanstalk incluye archivos `.conf` en esta carpeta automáticamente.

```
~/workspace/my-app/
|-- .ebextensions
|   -- httpd
|      -- conf.d
|         -- myconf.conf
|         -- ssl.conf
-- index.jsp
```

Por ejemplo, la siguiente configuración de Apache 2.4 agrega un agente de escucha en el puerto 5000.

**Example . ebextensions/httpd/conf.d/port5000.conf**  

```
listen 5000
<VirtualHost *:5000>
  <Proxy *>
    Require all granted
  </Proxy>
  ProxyPass / http://localhost:8080/ retry=0
  ProxyPassReverse / http://localhost:8080/
  ProxyPreserveHost on

  ErrorLog /var/log/httpd/elasticbeanstalk-error_log
</VirtualHost>
```

Para anular por completo la configuración de Apache predeterminada de Elastic Beanstalk, incluya una configuración en el paquete de código fuente en `.ebextensions/httpd/conf/httpd.conf`.

```
~/workspace/my-app/
|-- .ebextensions
|   `-- httpd
|       `-- conf
|           `-- httpd.conf
`-- index.jsp
```

Si anula la configuración de Apache de Elastic Beanstalk, agregue las siguientes líneas a su `httpd.conf` para extraer las configuraciones de Elastic Beanstalk de [Informes y monitoreo de estado mejorados de Elastic Beanstalk](health-enhanced.md), la compresión de respuesta y los archivos estáticos.

```
IncludeOptional conf.d/*.conf
IncludeOptional conf.d/elasticbeanstalk/*.conf
```

Si su entorno utiliza Apache 2.2 como proxy, reemplace las directivas `IncludeOptional` por `Include`. Para obtener más información sobre el comportamiento de estas dos directivas en las dos versiones de Apache, consulte [Incluir en Apache 2.4](https://httpd.apache.org/docs/2.4/mod/core.html#include), [IncludeOptional en Apache 2.4](https://httpd.apache.org/docs/2.4/mod/core.html#includeoptional) e [Incluir en](https://httpd.apache.org/docs/2.2/mod/core.html#include) Apache 2.2.

**nota**  
Para anular el agente de escucha predeterminado en el puerto 80, incluya un archivo denominado `00_application.conf` en `.ebextensions/httpd/conf.d/elasticbeanstalk/` para sobrescribir la configuración de Elastic Beanstalk.

Para consultar un ejemplo funcional, eche un vistazo al archivo de configuración predeterminado de Elastic Beanstalk en `/etc/httpd/conf/httpd.conf` en una instancia de su entorno. Todos los archivos de la carpeta `.ebextensions/httpd` del paquete de código fuente se copian en `/etc/httpd` durante las implementaciones.

### Ampliación de la configuración de nginx predeterminada: AMI de Amazon Linux () AL1
<a name="java-tomcat-proxy-nginx"></a>

Para ampliar la configuración predeterminada de nginx de Elastic Beanstalk, añada los archivos de configuración `.conf` a una carpeta con el nombre `.ebextensions/nginx/conf.d/` en el paquete de código fuente de su aplicación. La configuración de nginx de Elastic Beanstalk incluye archivos `.conf` en esta carpeta automáticamente.

```
~/workspace/my-app/
|-- .ebextensions
|   `-- nginx
|       `-- conf.d
|           |-- elasticbeanstalk
|           |   `-- my-server-conf.conf
|           `-- my-http-conf.conf
`-- index.jsp
```

Los archivos con la extensión .conf en la carpeta `conf.d` se incluyen en el bloque `http` de la configuración predeterminada. Los archivos de la carpeta `conf.d/elasticbeanstalk` se incluyen en el bloque `server` dentro del bloque `http`.

Para anular completamente la configuración predeterminada de nginx de Elastic Beanstalk, incluya una configuración en el paquete de código fuente de `.ebextensions/nginx/nginx.conf`.

```
~/workspace/my-app/
|-- .ebextensions
|   `-- nginx
|       `-- nginx.conf
`-- index.jsp
```

**Notas**  
Si anula la configuración de nginx de Elastic Beanstalk, añada la siguiente línea al bloque `server` de su configuración para extraer las configuraciones de Elastic Beanstalk del agente de escucha del puerto 80, la compresión de respuesta y los archivos estáticos.  

  ```
   include conf.d/elasticbeanstalk/*.conf;
  ```
Para anular el agente de escucha predeterminado en el puerto 80, incluya un archivo denominado `00_application.conf` en `.ebextensions/nginx/conf.d/elasticbeanstalk/` para sobrescribir la configuración de Elastic Beanstalk.
Incluya también la línea siguiente en el bloque `http` de su configuración para extraer las configuraciones de Elastic Beanstalk para [Informes y monitoreo de estado mejorados de Elastic Beanstalk](health-enhanced.md) y los registros.  

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

Para consultar un ejemplo funcional, eche un vistazo al archivo de configuración predeterminado de Elastic Beanstalk en `/etc/nginx/nginx.conf` en una instancia de su entorno. Todos los archivos de la carpeta `.ebextensions/nginx` del paquete de código fuente se copian en `/etc/nginx` durante las implementaciones.