Cachear tus páginas puede ser algo realmente útil y más aún si tus paginas usan muchas conexiones a la base de datos y están generados con un lenguaje cómo Php , sobre todo cuando hablamos de hostings compartidos en los que el número de peticiones a las bases de datos esta limitado.
Cuando tus páginas son cacheadas el servidor no perderá ni tiempo ni recursos en regenerar una y otra vez estas, unicmanete las cargará de la cache. Vamos a ver cómo podríamos cachear nuestras páginas con Php en tan sólo 5 minutos.
Necesitaremos saber tres cosas antes de comenzar:
Primero si nuestro sitio esta desarrollado en PHP, segundo deberemos saber dar permiso 777 a una carpeta de nuestro directorio (en esta carpeta se albergarán las páginas cacheadas), si no sabes hacerlo pregunta a Google que seguro que resuevle tu duda y por último necesitaremos saber la ruta completa del directorio en cuestión, esto quiere decir ruta física (/home/pepito/public_html/).
Ahora que hemos resulto estas tres cosas podremos en unos simples pasos cachear nuestro sitio Php .
1.En el raiz de nuestra web crearemos los siguientes archivos: .htaccess, start_cache.php, end_cache.php, y create una carpeta llamada “cache_files”.
2.Cambiar los permisos a la carpeta “cache_files” a 777.
3.Dentro de nuestro archivo .htaccess, insertaremos estas dos líneas de código:
php_value auto_prepend_file /home/pepito/public_html/start_cache.php
php_value auto_append_file /home/pepito/public_html/end_cache.php
Deberás cambiar "/home/pepito/public_html/" por la ruta física donde esta albergado tu sitio.
4.Introduciremos el siguiente código en el archivo “start_cache.php”. De nuevo cambiaremos "/home/pepito/public_html/" por la ruta física de tu sitio.
<?
//Algunos parametros de configuracion
$settings_cachedir = '/home/pepito/public_html/cache_files/';
$settings_cachetime = 3600; //keep cache files for 3600 seconds (1 hour)
//Pagina php
$thispage = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$cachelink = $settings_cachedir.md5($thispage).".html";
if (@file_exists($cachelink)) {
$cachelink_time = @filemtime($cachelink);
if ((time() - $settings_cachetime) < $cachelink_time) { @readfile($cachelink);die(); }
}
ob_start();
?>
Por último introducir este código en el archivo“end_cache.php”.
<?
$fp = fopen($cachelink, 'w');@fwrite($fp, ob_get_contents());@fclose($fp);ob_end_flush();
?>
... y esto es todo amigos. Todas tus páginas incluidas las estáticas HTML seran cacheadas durante 1 hora, transcurrido este tiempo se volverán a generar. Las páginas cacheadas serán guardadas en la carpeta "cache_files" si tienes algún problema deja un comentario que alguien te echará una mano.
Usuarios que han visto este tema también han visto...
- Introducción rápida a las sesiones
- Guardar y extraer imágenes en MySQL con PHP
- Crear un sistema de noticias con PHP
- Monitorizando procesos en WindowsXP y Linux
- Ponle una marca a las imágenes de tu web
Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2011 Factoría de Internet S.L.. Todos los derechos reservados.