CodeIgniter - Almacenamiento en caché de páginas
El almacenamiento en caché de una página mejorará la velocidad de carga de la página. Si la página está almacenada en caché, se almacenará en su estado completamente renderizado. La próxima vez, cuando el servidor reciba una solicitud para la página almacenada en caché, se enviará directamente al navegador solicitado.
Los archivos en caché se almacenan en application/cachecarpeta. El almacenamiento en caché se puede habilitar por página. Al habilitar la caché, debemos establecer el tiempo hasta el cual debe permanecer en la carpeta en caché y, después de ese período, se eliminará automáticamente.
Habilitar almacenamiento en caché
El almacenamiento en caché se puede habilitar ejecutando la siguiente línea en cualquiera de los métodos del controlador.
$this->output->cache($n);
Dónde $n es el numero de minutes, desea que la página permanezca en caché entre actualizaciones.
Deshabilitar el almacenamiento en caché
El archivo de caché se elimina cuando caduca, pero cuando desea eliminarlo manualmente, debe deshabilitarlo. Puede deshabilitar el almacenamiento en caché ejecutando la siguiente línea.
// Deletes cache for the currently requested URI
$this->output->delete_cache();
// Deletes cache for /foo/bar
$this->output->delete_cache('/foo/bar');
Ejemplo
Crea un controlador llamado Cache_controller.php y guárdalo en application/controller/Cache_controller.php
<?php
class Cache_controller extends CI_Controller {
public function index() {
$this->output->cache(1);
$this->load->view('test');
}
public function delete_file_cache() {
$this->output->delete_cache('cachecontroller');
}
}
?>
Crea un archivo de vista llamado test.php y guárdalo en application/views/test.php
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>CodeIgniter View Example</title>
</head>
<body>
CodeIgniter View Example
</body>
</html>
Cambiar el routes.php presentar en application/config/routes.php para agregar una ruta para el controlador anterior y agregar la siguiente línea al final del archivo.
$route['cachecontroller'] = 'Cache_controller';
$route['cachecontroller/delete'] = 'Cache_controller/delete_file_cache';
Escriba la siguiente URL en el navegador para ejecutar el ejemplo.
http://yoursite.com/index.php/cachecontroller
Después de visitar la URL anterior, verá que se creará un archivo de caché para esto en application/cachecarpeta. Para eliminar el archivo, visite la siguiente URL.
http://yoursite.com/index.php/cachecontroller/delete