Ejecutar un servidor web Apache básico

En este tutorial se muestra cómo usar Compute Engine para desplegar un servidor web Apache en una instancia de máquina virtual (VM). Para obtener más información sobre las tecnologías que puedes usar para servir contenido web enGoogle Cloud, consulta Elegir una opción de alojamiento enGoogle Cloud.

Una máquina virtual de Compute Engine se puede controlar como cualquier servidor Linux estándar. Despliega un servidor web Apache para aprender los conceptos básicos de la ejecución de un servidor en una instancia de VM.

Requisitos previos

Crea una máquina virtual Linux que permita el tráfico HTTP haciendo lo siguiente:

  1. Crea una máquina virtual de Linux. Para obtener más información, consulta la guía de inicio rápido con una máquina virtual de Linux.

    1. Opcional: Al crear una VM Linux, puedes seleccionar la casilla Permitir el tráfico HTTP para abrir el puerto tcp:80 al tráfico y la casilla Permitir el tráfico HTTPS para abrir el puerto tcp:443. Sin embargo, si quieres abrir otro puerto, configura el cortafuegos después de crear la VM y, a continuación, configura Apache para que use el cortafuegos.
  2. Conéctate a la VM Linux. Para obtener más información, consulta Conectarse a la instancia de VM.

Instalar Apache

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Para conectarte a la máquina virtual Linux que acabas de crear, haz clic en SSH en la fila de la máquina virtual.
  3. Para actualizar los paquetes disponibles e instalar el paquete apache2, usa el gestor de paquetes del sistema operativo. Si has seguido la guía de inicio rápido, se creará una VM de Ubuntu. Para actualizar una máquina virtual Ubuntu, ejecuta el siguiente comando:

    sudo apt update && sudo apt -y install apache2
    

    Después de instalar Apache, el sistema operativo inicia automáticamente el servidor Apache.

  4. Comprueba que Apache se esté ejecutando:

    sudo systemctl status apache2
    
  5. Sobrescribe la página web predeterminada del servidor web Apache:

    echo '<!doctype html><html><body><h1>Hello World!</h1></body></html>' | sudo tee /var/www/html/index.html
    

Probar el servidor

Comprueba que tu máquina virtual esté sirviendo tráfico en su IP externa.

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Copia la IP externa de tu VM en la columna IP externa.
  3. En un navegador, ve a http://[EXTERNAL_IP]. No te conectes mediante https, ya que esto provoca que el servidor devuelva un error Connection Refused.

Debería aparecer la página "Hello World".

Limpieza

Para evitar que se te cobre por la VM cuando hayas terminado de experimentar, elimínala. Para obtener más información, consulta la sección Limpiar.

Solución de problemas

Recibo un error Connection Refused

Si aparece un error Connection Refused, es posible que:

  • Tu instancia de VM no es accesible públicamente porque tus reglas de cortafuegos o etiquetas están mal configuradas de una de las siguientes formas:

    • La instancia de VM no tiene la etiqueta adecuada que permite a Compute Engine aplicar las reglas de cortafuegos correspondientes a tu instancia.
    • Tu proyecto no tiene una regla de cortafuegos que permita el tráfico a la dirección IP externa de tu instancia.
  • Estás intentando acceder a la VM mediante una dirección https. Comprueba que tu URL sea http://[EXTERNAL_IP] en lugar de https://[EXTERNAL_IP].

Para asegurarte de que tu instancia de VM tiene las etiquetas correctas, sigue estos pasos:

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Haz clic en el nombre de la instancia a la que intentas conectarte.
  3. En la parte superior de la página, haz clic en Editar.
  4. Desplázate hacia abajo hasta Cortafuegos y asegúrate de que la casilla Permitir el tráfico HTTP esté marcada. Si no está marcada, márcala.
  5. Guarda los cambios. De esta forma, se asegura de que se añadan las etiquetas correctas a la instancia de VM.

Para asegurarte de que existe la regla de cortafuegos correcta, sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Reglas de cortafuegos.

    Ir a reglas de cortafuegos

  2. Busca una regla de cortafuegos que permita todos los intervalos de IPs a través de tcp:80. Por lo general, esta regla se denomina regla default-allow-http.
  3. Si no existe ninguna regla, crea una.
    1. Haz clic en Crear regla de cortafuegos.
    2. Asigna un nombre a la regla, como default-allow-http.
    3. En Intervalos de IPs de origen, introduzca 0.0.0.0/0 para permitir el tráfico de todas las fuentes.
    4. En Protocolos y puertos, marca Protocolos y puertos especificados e introduce tcp:80.
    5. Crea la regla de cortafuegos.

Vuelve a probar el servidor. Para ello, ve a la dirección IP externa de la instancia:

http://[EXTERNAL_IP]

Siguientes pasos

Consulta cómo alojar un sitio web en Compute Engine.

Consulta cómo configurar LAMP en Compute Engine.

Pruébalo

Si es la primera vez que utilizas Google Cloud, crea una cuenta para evaluar el rendimiento de Compute Engine en situaciones reales. Los nuevos clientes también reciben 300 USD en crédito gratuito para ejecutar, probar y desplegar cargas de trabajo.

Probar Compute Engine gratis