Saltar al contenido

Infraestructura y Rendimiento

Del escritorio al servidor: el caótico primer despliegue de PrensaBot

La migración de un entorno local de Windows a un servidor Linux expuso errores críticos que casi paralizan la plataforma. Una crónica del aprendizaje forzoso en infraestructura.

Del escritorio al servidor: el caótico primer despliegue de PrensaBot

Todo desarrollo parece impecable mientras vive en el entorno controlado de la computadora local. Pero la verdadera prueba llega al momento del despliegue. El equipo detrás de PrensaBot, la plataforma SaaS construida con Laravel y Filament para gestionar contenidos periodísticos, aprendió esta lección de manera abrupta durante su primera migración a un entorno productivo real. El objetivo era claro: trasladar una aplicación desarrollada en Windows con Laragon a un servidor Hostinger con Linux, Apache/LiteSpeed. Lo que siguió fue una sucesión de problemas que pusieron en jaque la operación inicial.

La pantalla roja y el CSS fantasma

El primer golpe fue un error 403 al intentar acceder a la ruta /admin. El servidor negaba el acceso. Tras ajustes en el archivo .htaccess y la reconfiguración del document root para que apuntara correctamente a la carpeta public/, el panel de administración finalmente apareció. Sin embargo, la victoria fue efímera: la interfaz de login se mostraba completamente desprovista de estilos. El problema radicaba en los assets compilados mediante Vite; en producción, el sistema no podía encontrarlos en las rutas que el entorno local daba por sentadas. La aplicación funcionaba, pero era inusable visualmente.

La contraseña que se encriptaba dos veces

Superado el obstáculo visual, surgió un fallo más insidioso: la autenticación. Los usuarios no podían iniciar sesión. La investigación descubrió un conflicto en la capa de seguridad. Por un lado, el seeder de la base de datos utilizaba la función Hash::make para proteger las contraseñas iniciales. Por otro, un mutator en el modelo de Usuario aplicaba nuevamente el hash al mismo valor al guardarlo. El resultado era que la contraseña almacenada sufría un doble encriptado, haciendo imposible la comparación durante el login. Un clásico error de desarrollo que solo se manifiesta al integrar todos los componentes.

El proceso de corrección fue metódico. Se revisó y ajustó el flujo completo de autenticación, se regeneraron los assets para el entorno de producción y se verificaron minuciosamente las configuraciones de rutas. La verificación final no fue una simple comprobación técnica. El equipo realizó las tres pruebas fundamentales: acceso físico al panel administrativo, carga correcta de todos los archivos CSS y JavaScript, y, lo más crucial, un inicio de sesión exitoso con credenciales reales desde el servidor remoto.

La lección quedó grabada a fuego: una aplicación no está lista solo porque funcione localmente. La transición al entorno productivo es un salto cualitativo que exige una validación exhaustiva con un usuario real, bajo las condiciones reales del servidor. Fue un rito de iniciación en Infraestructura y Rendimiento que definió los protocolos de despliegue futuro de PrensaBot.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *