

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.

# QuickStart: Implementar una aplicación PHP en Elastic Beanstalk
<a name="php-quickstart"></a>

En el siguiente tutorial, aprenderá a crear e implementar una aplicación PHP de ejemplo en un AWS Elastic Beanstalk entorno mediante la CLI de EB.

**No válido para uso en producción**  
Los ejemplos se presentan solo con fines de demostración. No utilice aplicaciones de ejemplo en producción.

**Topics**
+ [Tu AWS cuenta](#php-quickstart-aws-account)
+ [Requisitos previos](#php-quickstart-prereq)
+ [Paso 1: crear una aplicación PHP](#php-quickstart-create-app)
+ [Paso 2: ejecutar la aplicación a nivel local](#php-quickstart-run-local)
+ [Paso 3: inicializar e implementar la aplicación PHP](#php-quickstart-deploy)
+ [Paso 4: examinar su aplicación en la nube](#php-quickstart-run-eb-ap)
+ [Paso 5: Actualizar y volver a implementar la aplicación](#php-quickstart-run-eb-ap)
+ [Limpieza](#php-quickstart-cleanup)
+ [Siguientes pasos](#php-quickstart-next-steps)

## Tu AWS cuenta
<a name="php-quickstart-aws-account"></a>

Si aún no es AWS cliente, debe crear una AWS cuenta para usar Elastic Beanstalk.

### Cree una cuenta AWS
<a name="php-quickstart-aws-account-procedure"></a>

#### Inscríbase en una Cuenta de AWS
<a name="sign-up-for-aws"></a>

Si no tiene uno Cuenta de AWS, complete los siguientes pasos para crearlo.

**Para suscribirse a una Cuenta de AWS**

1. Abrir [https://portal.aws.amazon.com/billing/registro](https://portal.aws.amazon.com/billing/signup).

1. Siga las instrucciones que se le indiquen.

   Parte del procedimiento de registro consiste en recibir una llamada telefónica o mensaje de texto e indicar un código de verificación en el teclado del teléfono.

   Cuando te registras en un Cuenta de AWS, *Usuario raíz de la cuenta de AWS*se crea un. El usuario raíz tendrá acceso a todos los Servicios de AWS y recursos de esa cuenta. Como práctica recomendada de seguridad, asigne acceso administrativo a un usuario y utilice únicamente el usuario raíz para realizar [Tareas que requieren acceso de usuario raíz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS te envía un correo electrónico de confirmación una vez finalizado el proceso de registro. En cualquier momento, puedes ver la actividad de tu cuenta actual y administrarla accediendo a [https://aws.amazon.com/](https://aws.amazon.com/)y seleccionando **Mi cuenta**.

#### Creación de un usuario con acceso administrativo
<a name="create-an-admin"></a>

Después de crear un usuario administrativo Cuenta de AWS, asegúrelo Usuario raíz de la cuenta de AWS AWS IAM Identity Center, habilite y cree un usuario administrativo para no usar el usuario root en las tareas diarias.

**Proteja su Usuario raíz de la cuenta de AWS**

1.  Inicie sesión [Consola de administración de AWS](https://console.aws.amazon.com/)como propietario de la cuenta seleccionando el **usuario root** e introduciendo su dirección de Cuenta de AWS correo electrónico. En la siguiente página, escriba su contraseña.

   Para obtener ayuda para iniciar sesión con el usuario raíz, consulte [Iniciar sesión como usuario raíz](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) en la *Guía del usuario de AWS Sign-In *.

1. Active la autenticación multifactor (MFA) para el usuario raíz.

   Para obtener instrucciones, consulte [Habilitar un dispositivo MFA virtual para el usuario Cuenta de AWS raíz (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) en la Guía del usuario de *IAM*.

**Creación de un usuario con acceso administrativo**

1. Activar IAM Identity Center.

   Consulte las instrucciones en [Activar AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) en la *Guía del usuario de AWS IAM Identity Center *.

1. En IAM Identity Center, conceda acceso administrativo a un usuario.

   Para ver un tutorial sobre su uso Directorio de IAM Identity Center como fuente de identidad, consulte [Configurar el acceso de los usuarios con la configuración predeterminada Directorio de IAM Identity Center en la](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) Guía del *AWS IAM Identity Center usuario*.

**Inicio de sesión como usuario con acceso de administrador**
+ Para iniciar sesión con el usuario de IAM Identity Center, use la URL de inicio de sesión que se envió a la dirección de correo electrónico cuando creó el usuario de IAM Identity Center.

  Para obtener ayuda para iniciar sesión con un usuario del Centro de identidades de IAM, consulte [Iniciar sesión en el portal de AWS acceso](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) en la *Guía del AWS Sign-In usuario*.

**Concesión de acceso a usuarios adicionales**

1. En IAM Identity Center, cree un conjunto de permisos que siga la práctica recomendada de aplicar permisos de privilegios mínimos.

   Para conocer las instrucciones, consulte [Create a permission set](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) en la *Guía del usuario de AWS IAM Identity Center *.

1. Asigne usuarios a un grupo y, a continuación, asigne el acceso de inicio de sesión único al grupo.

   Para conocer las instrucciones, consulte [Add groups](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) en la *Guía del usuario de AWS IAM Identity Center *.

## Requisitos previos
<a name="php-quickstart-prereq"></a>
+ Interfaz de la línea de comandos de Elastic Beanstalk: para la instalación, consulte [Instalación de la CLI de EB con el script de configuración (recomendado)](eb-cli3.md#eb-cli3-install).
+ PHP: instale PHP en una máquina local según los pasos indicados en [Instalación y configuración](https://www.php.net/manual/en/install.php) del sitio web de PHP.

## Paso 1: crear una aplicación PHP
<a name="php-quickstart-create-app"></a>

Para este inicio rápido, creará una aplicación PHP de *Hello World*.

Cree el directorio del proyecto.

```
~$ mkdir eb-php
~$ cd eb-php
```

A continuación, cree un archivo de `index.php` en el directorio del proyecto y añada el siguiente código:

**Example `index.php`**  

```
<?php
  echo "Hello from a PHP application running in Elastic Beanstalk!";
?>
```

## Paso 2: ejecutar la aplicación a nivel local
<a name="php-quickstart-run-local"></a>

Para ejecutar la aplicación localmente, utilice el siguiente comando.

```
~$ php -S localhost:5000
```

En el navegador abra [http://localhost:5000](http://localhost:5000).

Debería ver el mensaje de saludo en el navegador y registrar los mensajes en su terminal.

Para detener el servidor local, ingrese `Control+c` y podrá implementar Elastic Beanstalk.

## Paso 3: inicializar e implementar la aplicación PHP
<a name="php-quickstart-deploy"></a>

A continuación, implementará la aplicación en un *entorno* mediante la consola de Elastic Beanstalk o la CLI de EB. En este tutorial, utilizará la CLI de EB con la opción interactiva para inicializar un entorno. 

**Cómo inicializar su entorno y crear un entorno**

1. Ejecute el comando **init** siguiente.

   ```
   ~$ eb init -i
   ```

   El comando init crea una aplicación de forma interactiva. El nombre de la aplicación será por defecto la carpeta local que sea `eb-php`.

   Para todas las solicitudes, excepto para el acceso a SSH, acepte los valores predeterminados para crear un entorno con la última versión de la plataforma PHP. Para solucionar problemas en las instancias, puede configurar el acceso mediante SSH volviendo a ejecutar el comando `eb init -i` más adelante o conectándose mediante Amazon EC2 Instance Connect o el Administrador de sesiones.

1. Creación de un entorno e implementación de la aplicación

   Ejecute el siguiente comando para crear un entorno denominado `blue-env`.

   ```
   ~$ eb create blue-env
   ```

   Cuando ejecuta el comando **eb create** por primera vez, Elastic Beanstalk crea automáticamente un archivo zip de la aplicación, denominado *paquete de código fuente*. A continuación, Elastic Beanstalk crea un entorno con una o más instancias de Amazon EC2 y, luego, implementa la aplicación en el entorno.

   La implementación de la aplicación en Elastic Beanstalk puede tardar hasta cinco minutos.

## Paso 4: examinar su aplicación en la nube
<a name="php-quickstart-run-eb-ap"></a>

Cuando finalice el proceso de creación del entorno, la aplicación debería estar en ejecución y escuchar las solicitudes en el puerto 5000. Conecte su aplicación con el siguiente comando:

```
~$ eb open
```

El comando `eb open` abre una pestaña del navegador en un subdominio personalizado creado para su aplicación.

## Paso 5: Actualizar y volver a implementar la aplicación
<a name="php-quickstart-run-eb-ap"></a>

Una vez que haya creado una aplicación e implementado un entorno, podrá implementar una nueva versión de la aplicación o una aplicación distinta en cualquier momento. La implementación de una nueva versión de la aplicación es una tarea más rápida, porque no requiere aprovisionamiento ni reinicio de instancias de Amazon EC2.

Actualice el código PHP para incluir el valor REQUEST\$1TIME desde el entorno del servidor:

```
<?php
  echo "Hello from a PHP application running in Elastic Beanstalk!";
  
  $timestamp = $_SERVER['REQUEST_TIME'];
  echo '<br/>Request time: ' . date('Y/m/d H:i:s', $timestamp);
?>
```

Vuelva a implementar el código PHP en Elastic Beanstalk con el siguiente comando:

```
~$ eb deploy
```

Cuando ejecuta **eb deploy**, la CLI de EB empaqueta el contenido del directorio del proyecto y lo implementa en su entorno.

Cuando finalice la implementación, actualice la página o vuelva a conectarse a la aplicación con `eb open`. Debería ver sus actualizaciones. Si no es así, solucione el problema ejecutando de nuevo el servidor local para comprobar los cambios.

****¡Enhorabuena\$1****  
Ha creado, implementado y actualizado una aplicación PHP con Elastic Beanstalk.

## Limpieza
<a name="php-quickstart-cleanup"></a>

Cuando finalice su trabajo con el código de demostración, puede terminar el entorno. [Elastic Beanstalk elimina AWS todos los recursos relacionados, como las instancias de [Amazon EC2, las instancias de bases de datos, los balanceadores](using-features.managing.ec2.md)[de carga, los grupos](using-features.managing.db.md) de seguridad y [las](using-features.managing.elb.md) alarmas.](using-features.alarms.md#using-features.alarms.title) 

Al eliminar recursos no se elimina la aplicación de Elastic Beanstalk, por lo que puede crear nuevos entornos para su aplicación en cualquier momento.

**Cómo terminar su entorno de Elastic Beanstalk desde la consola**

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. Elija **Actions** (Acciones) y, a continuación, **Terminate Environment** (Terminar el entorno).

1. Utilice el cuadro de diálogo en pantalla para confirmar la terminación del entorno.

Otra posibilidad es terminar su entorno con la CLI de EB con el siguiente comando:

```
~$ eb terminate
```

## Siguientes pasos
<a name="php-quickstart-next-steps"></a>

Puede explorar el entorno de la aplicación con la consola de Elastic Beanstalk. Para obtener más información, consulte [Explore su entorno](GettingStarted.md#GettingStarted.Explore).

Para ver ejemplos avanzados de uso de PHP, consulte [Ejemplos avanzados de PHP en Elastic Beanstalk](php-samples.md).