- 1

Portafolio personal con PHP puro: estructura y router propio
01:12 - 2

Construcción de estructura web básica con PHP
05:30 - 3

Vistas parciales en PHP para código reutilizable
08:11 - 4

Integración de Tailwind CSS para mejorar el diseño de menús web
04:06 - 5

Activar botones de menú dinámicamente con PHP
07:08 - 6

Implementación del patrón Front Controller en PHP
09:44 - 7

Conexión a MySQL con PDO y consultas dinámicas en PHP
09:02 quiz de Introducción
Implementación del patrón Front Controller en PHP
Clase 6 de 33 • Curso de PHP Avanzado
Contenido del curso
- 22

Middleware en PHP para proteger rutas con autenticación
07:02 - 23

Refactorización de middleware con clases e interfaces en PHP
05:26 - 24

Vista de inicio de sesión con PHP y control de acceso
07:21 - 25

Validación de credenciales y consultas de usuario en la base de datos
08:55 - 26

Cifrado de contraseñas y gestión de sesiones en PHP
07:31 quiz de Seguridad
- 27

Separación de lógica de autenticación en clases PHP
05:13 - 28

Redirección automática después de enviar formularios
08:05 - 29

Manejo de mensajes flash en PHP con Session Manager
05:50 - 30

Helpers para gestión de sesiones en PHP
08:06 - 31

Integración de funciones con sistema de sesiones en PHP
07:37 - 32

Sistema de redirecciones con mensajes en PHP
06:00 - 33

Middleware para proteger rutas de usuarios logueados en PHP
04:11
Implementar el patrón Front Controller es esencial cuando se busca centralizar y optimizar la estructura de navegación en un proyecto PHP. Mediante este sistema, se maneja todo el acceso al proyecto desde un único punto, aumentando seguridad y simplificando la gestión del código fuente.
¿Qué es el patrón Front Controller y por qué implementarlo?
El patrón front controller se utiliza para centralizar todas las solicitudes y manejarlas desde un solo archivo. Este enfoque:
- Incrementa la seguridad al limitar el acceso directo a archivos importantes.
- Facilita la organización de rutas en el proyecto.
- Simplifica futuras modificaciones y el mantenimiento del código.
Al emplear un sistema basado en un único punto de entrada como index.php, el desarrollador maneja mejor la lógica del proyecto.
¿Cómo establecer rutas centralizadas en PHP?
Las rutas centralizadas permiten administrar fácilmente las URL del proyecto. El procedimiento es:
- Crear un archivo específico (
web.php), almacenado en una carpeta propia (rutas). - Utilizar un arreglo para almacenar y gestionar todas las rutas disponibles.
- Vincular claramente cada URL a su controlador correspondiente mediante este arreglo:
return [
'/' => 'home.php',
'post' => 'post.php',
'about' => 'about.php',
'enlaces' => 'enlaces.php'
];
Esta práctica permite manejar fácilmente errores o cambios en la navegación.
¿Qué pasos seguir para proteger el proyecto con una carpeta public?
Para asegurar que los archivos vitales no sean accesibles directamente desde el navegador:
- Ubicar el archivo
index.phpen una carpeta específica y pública (denominada comúnmente comopublic). - Mantener el resto del código, rutas y controladores, en directorios externos, inaccesibles directamente.
Esta configuración evita que usuarios externos puedan acceder directamente a archivos sensibles como las rutas definidas en web.php. Además, protege los archivos fuente y facilita el escalar el proyecto posteriormente.
¿Cómo ajustar las rutas relativas?
Al reorganizar tu proyecto con el patrón front controller y una carpeta pública, es fundamental ajustar las rutas relativas. Por ejemplo:
- Si tratas de acceder a recursos almacenados fuera de la carpeta pública, la ruta debe indicar claramente el movimiento hacia atrás en la estructura del proyecto:
// ejemplo de ruta hacia atrás
require '../../recursos/home.php';
Este detalle asegura que el proyecto funcione de forma continua y correcta tras la reorganización.
¿Quieres aplicarlo en tu blog? Comparte tu experiencia o cualquier duda en los comentarios.