Examen 4: Implementación de un sitio web de producción#
Objetivos#
- Instalación y configuración de un servidor de aplicaciones
- Creación del VirtualHost para la aplicación web
- Instalación de una aplicación web y configuración de ambiente productivo
- Instalación y configuración de la base de datos
- Configuración de características adicionales en el ambiente productivo
Elementos de apoyo#
Note
Todos estos videos están en una lista de reproducción dedicada a los temas de HTTP y SSL 📹
- Protocolo DNS 📼
- Configuración de OpenSSH y autenticación con llaves 📼
- Configuración de Apache HTTPD en Debian 📼
- Directivas de configuración de Apache HTTPD 📼
- Configuración de VirtualHosts de Apache HTTPD 2.4 utilizando /etc/hosts 📼
- Configuración de VirtualHosts de Apache HTTPD 2.4 con registros DNS 📼
- Certificados SSL x509 📼
- Certificados SSL con OpenSSL y VirtualHost HTTPS en Apache HTTPD 📼
- Trámite de un certificado SSL con Let's Encrypt utilizando certbot 📼
Páginas de manual de Apache HTTPD
Restricciones#
Danger
- La evaluación de esta actividad corresponderá al cuarto examen parcial del curso
Warning
- Se recomienda que se realicen las actividades previas siguiendo la calendarización con el objeto de dejar suficiente tiempo para la elaboración de este examen práctico
- La fecha límite de entrega es el miércoles 10 de junio de 2026 a las 23:59 horas
- Esta actividad debe ser entregada individualmente de acuerdo al flujo de trabajo para la entrega de tareas y prácticas
- Utilizar la carpeta
docs/examenes/examen-wordpress/ApellidoApellidoNombreNombrepara entregar la práctica - Hacer un merge request a la rama
examen-wordpressdel repositorio de tareas para entregar la actividad
- Utilizar la carpeta
- No se permite tener proyectos repetidos. Revisar los requerimientos de la aplicación o sistema elegido para seleccionar la base de datos y motor de caché en memoria (si aplica).
Instalación de una aplicación web en un ambiente productivo#
Tabla de definición de proyectos#
|
|
Stack |
Características |
|---|---|---|
|
0
|
|
|
|
1
|
|
|
|
2
|
|
|
|
3
|
|
|
|
4
|
|
|
|
5
|
|
|
|
6
|
|
|
|
7
|
|
|
|
8
|
|
|
Warning
- Revisar la página de características adicionales donde viene descrita cada una.
Procedimiento#
-
Instalar y configurar la aplicación web para que se conecte a la base de datos y que utilice la configuración solicitada de PHP
-
Montar la aplicación en el directorio
/srv/wordpress/srv └── wordpress ├── conf // Configuración de Apache HTTPD o NGINX ├── ssl // Copiar aquí los archivos PEM de Let's Encrypt y CertBot └── htdocs // Raíz del sitio web wordpress.MI-DOMINIO.dpdns.org -
Crear el registro CNAME
wordpress.MI-DOMINIO.dpdns.orgque apunte aclase.tonejito.info- Esto hace que se utilice el servidor
192.99.247.48
- Esto hace que se utilice el servidor
-
Importar los archivos de Let's Encrypt y CertBot en
/srv/wordpress/sslpara el soporte de HTTPS -
Configurar el VirtualHost predeterminado para que responda con una página VACÍA que se sirva desde
/var/www/html/index.htmlpor HTTP y HTTPS -
Crear un VirtualHost que responda al nombre
wordpress.MI-DOMINIO.dpdns.orgy cuya raíz esté en/srv/wordpress/htdocspor HTTP y HTTPS- Redireccionar TODAS las peticiones de HTTP a HTTPS
- No utilizar HSTS (HTTP Strict Transport Security)
-
La aplicación web WordPress debe responder en la raíz del sitio
- Correcto:
https://wordpress.MI-DOMINIO.dpdns.org/ - Incorrecto:
https://wordpress.MI-DOMINIO.dpdns.org/wordpress/
- Correcto:
-
-
El sitio debe tener un certificado wildcard SSL emitido por Let's Encrypt y se debe utilizar el mismo nombre de dominio que en el examen-3
-
El sitio debe hacer redirección de todas las peticiones HTTP hacía su versión en HTTPS
-
Se pueden usar redirecciones estándar
301y302de HTTP -
Utilizar la directiva
Redirecto la configuración demod_rewrite- Pero no ambas porque son excluyentes entre si
-
Entregables#
- Enviar el reporte de la implementación en un merge request
Reporte#
Hacer un tutorial que explique cómo se implementó el sitio web asignado:
-
Explicar brevemente la instalación del stack web en la máquina virtual de la nube:
- Configuración de repositorios externos:
SuryoMariaDB community - Registros DNS
- Importar certificado de Let's Encrypt del examen pasado
- VirtualHost de Apache HTTPD o NGINX
- Instalación y configuración de PHP con
mod_phpoFPM - Instalación y configuración de MariaDB
- Configuración de repositorios externos:
-
Especificar DETALLADAMENTE cómo se implementaron las características adicionales en la instalación de WordPress.
Note
- Subir las imagenes necesarias al directorio
img
Notas adicionales#
-
No se aceptan instalaciones que provengan de scripts que automaticen el proceso, ni de soluciones todo en uno (one click install)
-
Redacte un reporte, en el que consigne los pasos que considere necesarios para explicar cómo realizó el proyecto, incluya capturas de pantalla que justifiquen su trabajo
-
Incluya en su reporte un apartado de conclusiones referentes al trabajo realizado
-
Puede agregar posibles errores, complicaciones, opiniones, críticas de el proyecto, o cualquier comentario relacionado
-
Entregue su reporte de acuerdo a la forma de entrega de tareas y prácticas definida al inicio del curso