Автоматически создавать кеш-файл с помощью php

Я использую базовую систему кэширования на моем сайте, основанную наэта ссылка

До сих пор это работало хорошо для всего, что я хочу сделать.

$cachefile = 'cache/'. basename($_SERVER['QUERY_STRING']) . '.html';
$cachetime = 1440 * 60; 

if (file_exists($cachefile) && (time() - $cachetime < filemtime($cachefile))) {
  include($cachefile);
  echo "";
  exit;
}

ob_start();

// My html/php code here


$fp = fopen($cachefile, 'w'); // open the cache file for writing
fwrite($fp, ob_get_contents()); // save the contents of output buffer to the file
fclose($fp); // close
ob_end_flush(); // Send to browser

Тем не менее, у меня есть пара страниц с более подробными запросами mysql, я потратил немало времени на его оптимизацию, однако для его выполнения по-прежнему требуется около 10 секунд, когда я запрашиваю его в mysql, и даже больше на веб-сайте. И иногда кажется, что время истекло, когда я получаю сообщение ниже.

The proxy server received an invalid response from an upstream server.
The proxy server could not handle the requestGET http://www.example.com

Reason: Error reading from remote server

Это н'Это огромная проблема, потому что я использую систему кэширования выше, только первый человек, который щелкнет по ней в течение дня, получает задержку, а в остальное время пользователи получают кэшированную страницу, так что она на самом деле довольно быстрая для них.

Я хочу уберечь себя от необходимости быть первым человеком, который каждый день заходил на страницу и автоматизировал этот процесс, поэтому в 17:00 (на сервере) каждый день файл записывался в кэш.

Как бы я лучше всего достичь этого?

Ответы на вопрос(1)

Ваш ответ на вопрос