Buenas a todos.
Hoy traigo un problemilla con una web a la que le tengo que "cachear" la home.
Resulta que el index de esa web carga muchísimo el server, así que mi jefe me ha pedido que cree un script en php que desde el cron del server se ejecute una vez al día, y que pille la index dinámica (php) y genere un index.html con el resultado de la ejecución de los scripts de la index.php.
He estado viendo cómo se hace, y es usando el buffer de lectura (creo que es el de lectura ^^Uu), con las funciones ob_start() y demás, pero tengo un problema a la hora de guardar el archivo index.html.
Os paso el código:
Código PHP:
Ver original<?php
// Función para crear un index estático al día lanzado desde el cron del servidor.
function cachear()
{
// Comenzamos a grabar el buffer
// Ejecutamos el archivo a grabar
include("index.php");
// Creamos/reescribimos el index estático
$fp = @fopen("index.html", 'w');
// Recogemos el contenido grabado en el buffer
// Reemplazamos los caracteres especiales
// Grabamos el buffer en el archivo
// Cerramos el proceso de escritura
// Limpiamos el buffer de lectura
}
// Ejecutamos la función para cachear la home
cachear();
?>
No sé por qué no escribe el archivo, y hasta donde yo lo veo no hay ningún problema con el buffer de escritura :S, las funciones fopen() y fwrite() están correctas, ¿no? Vengo de php.net y no he encontrado fallo en el código :S...
¿Alguna idea de por qué no genera el archivo html?
Desde ya, muchas gracias por ayudarme.
Un saludo.