Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Laravel / Modo Mantenimiento sin Consola: Archivo DOWN

Modo Mantenimiento sin Consola: Archivo DOWN

Por jc mouse viernes, octubre 3, 2025

La forma que tiene Laravel en poner una aplicación en Modo Mantenimiento es por consola mediante el comando:

php artisan down

Sin embargo en ocasiones no se tiene acceso a esta herramienta por X o Z razon y se tiene que improvisar creando rutas personalizadas que ejecuten los comandos de Artisan (como DOWN y UP) utilizando la fachada Artisan. Esto permite poner la aplicación en mantenimiento a traves de una URL, pero hay que tener mucho cuidado, ya que una mala configuración podria dejarte fuera de tu app ya que la ruta para el UP podria no ser accesible, ademas de que su implementación lleva tiempo e incluso algunos servidores tienen tantas restricciones que no te permitirian ejecutar el script.

Por esta razon el metodo del «archivo manual DOWN» que veremos a continuación es a menudo el más fiable si no se tiene acceso a la consola.

Método sin consola «Archivo DOWN»

Cuando se ejecuta el comando «php artisan down», internamente Laravel crea un archivo DOWN sin extensión en el directorio storage/framework/, por tanto el metodo sin consola se reduce a la creación manual de este archivo.

Este archivo DOWN, no esta vacio, contiene un objeto JSON como el siguiente:

{
    "except": [],
    "redirect": null,
    "retry": null,
    "refresh": null,
    "secret": null,
    "status": 503,
    "template": null
}

donde:

  • except de tipo array, es una lista de rutas URI que deben permanecer accesibles incluso cuando la aplicación está en modo de mantenimiento. Es útil para endpoints de administración, webhooks o rutas de monitoreo.

Ejemplo:

"except":["admin", "api/status", "webhooks/*"]
  • redirect de tipo string o null. Si se establece, redirige todas las solicitudes entrantes (mientras la aplicación está en mantenimiento) a la URL especificada. Si es null, se mostrara la página de error 503.
"redirect":"https://tuotrodominio.com/web-en-mantenimiento"
  • retry de tipo int o null. Indica el número de segundos que el navegador debe esperar antes de intentar recargar la página. Este valor se envía en el encabezado HTTP Retry-After. Si es null, no se incluye el encabezado.
"retry":60 (para esperar 60 segundos)
  • refresh de tipo int o null. Indica el número de segundos tras los cuales se enviará automáticamente un encabezado Refresh al navegador. Es decir, hace que el navegador recargue la página automáticamente después de este tiempo.
"refresh": 5 (la página se recargará cada 5 segundos)
  • secret de tipo string o null. Es una clave secreta que permite a usuarios específicos acceder a la aplicación para pruebas o verificación.
"secret": "https://tudominio.com/clave_123"

status. Es el código de estado HTTP que se debe devolver a los clientes. El estándar para el modo de mantenimiento es 503 (Service Unavailable), que indica a los motores de búsqueda y navegadores que el problema es temporal. Dicho de otra forma, dejalo como esta.

template de tipo string o null. Indica el nombre de la vista Blade a precargar y renderizar como página de mantenimiento. Si se establece, esta vista se carga antes de que se inicien los frameworks de la aplicación, lo que evita errores de dependencias. Por defecto, Laravel busca resources/views/errors/503.blade.php

"errors": "tu-blade503.blade.php"
o simplemente dejalo como
"errors": null

Un ejemplo de archivo DOWN personalizado seria el siguiente:

{
    "except": [
        "admin/*",
        "consultas"
    ],
    "redirect": null,
    "retry": 300,
    "refresh": 10,
    "secret": "access-123",
    "status": 503,
    "template": "errors::my-custom-503"
}

Ya cuando desees poner tu web nuevamente en linea, solo debes eliminar el archivo DOWN.

Enjoy!!!

Tags

Artículos similares

Creación de mapas con shapes – Parte 3

En nuestro mapa interactivo, se hará uso de un mapa departamental dividido en provincias, todo a través  de shapes, si b[...]

Obteniendo coordenadas XY con Touch Event

Los smartphone al no tener los típicos botones de los celulares, su pantalla es sensible al movimiento, esto se llama «t[...]

Caja blanca: Prueba del camino básico

La prueba del camino básico, es una prueba de «caja blanca» que consiste en verificar el código de nuestros sistemas de[...]

Videojuego educativo contra el Ciberbullying

¿Que es el Ciberbullying? Ciberbullying es la unión de dos palabras en inglés cyber + bullying, en español lo conocemos[...]

Gestión de Stock – La Vista (Parte 3)

En esta tercera parte del tutorial crearemos la interfaz de usuario GUI (VISTA) para el sistema de gestión de stock. Tom[...]

Crea App multilenguaje con Android Studio

En este post aprenderemos los pasos básicos para construir una aplicación android con soporte multilenguaje, utilizaremo[...]