La pregunta es bastante clara.
php artisan cache:clear
¿Hay alguna solución para borrar el caché como el que usamos anteriormente en la CLI? Estoy usando un popular servicio de alojamiento compartido, pero según mi plan, no tengo acceso al panel de control.
** Quiero borrar el caché de vistas. **
Vi una pregunta casi igual que esta, pero no me ayuda.
php
laravel-5
command-line-interface
Rinto George
fuente
fuente
Respuestas:
Puede llamar a un comando Artisan fuera de la CLI.
Puede consultar el documento oficial aquí http://laravel.com/docs/5.0/artisan#calling-commands-outside-of-cli
Actualizar
No hay forma de eliminar la vista de caché. Tampoco
php artisan cache:clear
eso.Si realmente desea borrar el caché de vista, creo que debe escribir su propio
artisan
comando y llamarlo como dije antes, o omitir por completo laartisan
ruta y borrar el caché de vista en alguna clase que llame desde un controlador o una ruta.Pero, mi verdadera pregunta es , ¿realmente necesita borrar el caché de la vista ? En un proyecto en el que estoy trabajando ahora, tengo casi 100 vistas en caché y pesan menos de 1 Mb, mientras que mi
vendor
directorio es> 40 Mb. No creo que ver el caché sea un verdadero cuello de botella en el uso del disco y nunca tuve una necesidad real de borrarlo.En cuanto a la caché de la aplicación , se almacena en el
storage/framework/cache
directorio, pero solo si configuró elfile
controladorconfig/cache.php
. Puede elegir muchos controladores diferentes, como Redis o Memcached , para mejorar el rendimiento en una memoria caché basada en archivos.fuente
cache:clear
comando funciona con el caché de la aplicación , al que se accede desde laCache
fachada.Espero que esto ayude a alguien
Vaya a
laravelFolder/bootstrap/cache
cambiar el nombreconfig.php
a cualquier cosa que desee, por ejemplo.config.php_old
y recarga tu sitio. Eso debería funcionar como vudú.Feliz codificación ...
fuente
cache
carpeta y.env
el valor de caché predeterminado del archivo. Pero después de eliminar todo este problema de nuevo ... cuandophp artisan optimize
. Finalmente, este resolvió mi problema, no cambiando el nombre sino cambiando el valor clave en el archivo config.php. Gracias @DeadGuyComo puedo ver: http://itsolutionstuff.com/post/laravel-5-clear-cache-from-route-view-config-and-all-cache-data-from-applicationexample.html
¿Es posible utilizar el siguiente código con los nuevos comandos clear cache:
No es necesario dar la posibilidad de borrar los cachés a todos, especialmente en un entorno de producción, por lo que sugiero comentar esas rutas y, cuando sea necesario, descomentar el código y ejecutar las rutas.
fuente
Caché de configuración La configuración de laravel se propaga a través de docenas de archivos, y
including
cada uno de ellos para cada solicitud es un proceso costoso. Para combinar todos sus archivos de configuración en uno, use:Tenga en cuenta que cualquier cambio en la configuración no tendrá ningún efecto una vez que lo guarde en caché. Para actualizar la caché de configuración, ejecute el comando anterior nuevamente. En caso de que desee deshacerse por completo de la caché de configuración, ejecute
Rutas de almacenamiento en caché El enrutamiento también es una tarea costosa en laravel. Para almacenar en caché el archivo routes.php, ejecute el siguiente comando:
Tenga en cuenta que no funciona con cierres. En caso de que esté usando cierres, esta es una gran oportunidad para moverlos a un controlador, ya que el comando artesanal arrojará una excepción al intentar compilar rutas que están vinculadas a cierres en lugar de los métodos de controlador adecuados. Al igual que la caché de configuración, cualquier cambio en routes.php ya no tendrá ningún efecto. Para actualizar el caché, ejecute el comando anterior cada vez que realice un cambio en el archivo de rutas. Para deshacerse por completo de la caché de ruta, ejecute el siguiente comando:
Optimización de mapa de clase
No es raro que un proyecto de tamaño mediano se extienda a través de cientos de archivos PHP. Como los buenos comportamientos de codificación nos dictan, todo tiene su propio archivo. Esto, por supuesto, no viene sin inconvenientes. Laravel tiene que incluir docenas de archivos diferentes para cada solicitud, lo cual es algo costoso de hacer.
Por lo tanto, un buen método de optimización es declarar qué archivos se utilizan para cada solicitud (esto es, por ejemplo, todos sus proveedores de servicios, middlewares y algunos más) y combinarlos en un solo archivo, que luego se cargará para cada solicitud. Esto no es diferente de combinar todos sus archivos javascript en uno, por lo que el navegador tendrá que hacer menos solicitudes al servidor.
Usted debe declarar los archivos de compilación adicionales (nuevamente: proveedores de servicios, middlewares, etc.) en config / compile.php, en la clave de archivos. Una vez que haya puesto allí todo lo esencial para cada solicitud realizada en su aplicación, concatenelas en un archivo con:
Optimizando la carga automática del compositor
Este no es solo para laravel, sino para cualquier aplicación que haga uso del compositor.
Primero explicaré cómo funciona la carga automática de PSR-4, y luego le mostraré qué comando debe ejecutar para optimizarlo. Si no está interesado en saber cómo funciona el compositor, le recomiendo que salte directamente al comando de la consola.
Cuando le pregunta al compositor por la
App\Controllers\AuthController
clase, primero busca una asociación directa en el mapa de clase. El mapa de clase es una matriz con asociaciones 1 a 1 de clases y archivos. Como, por supuesto, no agregó manualmente la clase de inicio de sesión y su archivo asociado al mapa de clase, el compositor continuará y buscará en los espacios de nombres. Debido a que la aplicación es un espacio de nombres PSR-4, que viene por defecto con Laravel y está asociada a laapp/
carpeta, el compositor intentará convertir el nombre de la clase PSR-4 en un nombre de archivo con procedimientos básicos de manipulación de cadenas. Al final, adivina queApp\Controllers\AuthController
debe ubicarse en un archivo AuthController.php, que está en unaControllers/
carpeta que afortunadamente debería estar en la carpeta del espacio de nombres, que estáapp/
.Todo este trabajo duro solo para lograr que la
App\Controllers\AuthController
clase exista en elapp/Controllers/AuthController.php
archivo. Para que el compositor escanee toda su aplicación y cree asociaciones directas 1 a 1 de clases y archivos, ejecute el siguiente comando:Tenga en cuenta que si ya ejecutó php artisan optimice --force, ya no tendrá que ejecutar este. Dado que el comando de optimización ya le dice al compositor que cree una carga automática optimizada.
fuente
Este paquete es para php ^ 7.0 y ^ laravel5.5 .
Use este paquete en cronjob que he creado solo para este propósito. También me enfrentaba a la misma situación. https://packagist.org/packages/afrazahmad/clear-cached-data Instalarlo y ejecutar:
y ejecutará los siguientes comandos automáticamente
Espero eso ayude.
Si desea ejecutarlo automáticamente a una hora específica, primero deberá configurar el trabajo crnjob. p.ej
En función del horario:
fuente
Ahora hay un comando en Laravel 5.1 para eso
fuente
Puede conectarse a través de FTP y borrar la
storage\framework\views
carpeta paralaravel 5
oapp\storage\views
paralaravel 4
.fuente
Para borrar todo el caché fuera de la CLI , haga esto; Esto funciona para mi.
fuente
config:cache
compensará y configuración de caché - así que supongo que no hay necesidad de añadir tantoborrará las vistas en caché
fuente
php artisan cache:clear
pide la alternativa al comando . Esto no borrará la memoria caché visualizada almacenada en la carpeta de almacenamiento, que es exactamente lo que se necesita.Puede hacer esto si está utilizando
Lumen
desdeLaravel
suroutes/web.php
archivo:fuente
También puede hacerlo a través del enrutador, similar a la respuesta de Francesco pero con menos desorden en la configuración del enrutador
Luego ejecútelos visitando http: //myapp.test/artisan/cache-clear, etc. Si necesita agregar / editar comandos Artisan válidos, simplemente actualice la matriz $ validCommands.
fuente
Esto funcionó para mí. En su proyecto, vaya a: almacenamiento> marco> vistas. Elimine todos los archivos allí y actualice su página.
fuente
Prueba esto también
para cli
php artisan clear: caché
para usar comando artesanal
});
[ https://www.tutsmake.com/laravel-clear-cache-using-artisan-command-cli/font>[1]
fuente
Usé esta página varias veces para copiar y pegar comandos rápidos en el compositor, así que escribí un comando que ejecuta estos comandos en un solo comando artesanal.
Colocar en
app\Console\Commands\Admin
carpetaluego ejecuta el comando en el compositor
php artisan traqza:clear-everything
Feliz codificación
Github -> https://github.com/Traqza/clear-everything
fuente
Si bien estoy totalmente en desacuerdo con la idea de ejecutar una aplicación laravel en alojamiento compartido (una mala idea en general), este paquete probablemente resolverá su problema. Es un paquete que le permite ejecutar algunos comandos artesanales desde la web. Está lejos de ser perfecto, pero puede funcionar para algunos casos de uso.
https://github.com/recca0120/laravel-terminal
fuente
Caché :: flush (); https://laravel.com/docs/5.7/cache#events Este trabajo en el controlador de clase extiende ExceptionHandler
fuente
Creo que el enfoque más eficiente para esto es usar el módulo de trabajo cron en el panel de administración del servidor compartido para ejecutar el comando del planificador laravel que a su vez llamará al comando artesanal configurado, algo como esto debería hacer el trabajo:
Con la configuración del programador en cron, puede editar el método de programación en \ App \ Console \ Kernel.php para llamar al comando artesanal correcto, algo como esto:
Siempre puede eliminar las líneas anteriores después de ejecutar los comandos
fuente