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.
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:
Ejemplo:
"except":["admin", "api/status", "webhooks/*"]
"redirect":"https://tuotrodominio.com/web-en-mantenimiento"
"retry":60 (para esperar 60 segundos)
"refresh": 5 (la página se recargará cada 5 segundos)
"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!!!
El empresario, inversor, activista político y magnate Elon Musk lanzó Grokipedia, su versión de Wikipedia, este lunes[...]
Utilizando pygame para hacer gráficos en python, se muestra a continuación un sencillo ejemplo de cómo utilizar esta lib[...]
JSON es un formato de texto ligero para el intercambio de datos ampliamente usado en los Servicios Web. En este post uti[...]
Cuando utilizamos aplicaciones web con conexión a base de datos MYSQL, se suele crear una clase que gestione la interacc[...]
¿Qué es una transición? Una transición es un efecto de movimiento que se da entre una imagen y la siguiente en una prese[...]
Desde java 7 esta disponible la interface ExecutorService que se extiende de Executor y nos proporciona los métodos nece[...]