rss search

next page next page close

Лучшее кеширование в wordpress

Лучшее кеширование в wordpress

Имею несколько сайтов с большой посещаемостью сделанных на wordpress. После достаточно больших нагрузок на сервер (без кеширования), задался целью найти плагин или скрипт для кеширования.

Пробовал плагины Hyper Cache, WP super cache нагрузка уменьшалась но время загрузки страницы оставалось прежним.

Поискав по просторам интернета, нашёл очень интересный скрипт (не плагин а именно php скрипт).  Это именно то что я и искал.

  1. Простота в установке и использовании.
  2. Кеширование всех генерируемых страниц wordpress.
  3. Моментальная загрузка сайта из кеша.
  4. При загрузке страницы не выполняется ни одного запроса к бд.
  5. При загрузке страницы выполняется всего один файл index.php
  6. Установка времени кеширования.

Установка скрипта:

  1. В корне сайта создайте папку cache, установите права на эту папку 777.
  2. Запишите в файл index.php в корне сайта:
    <?php
    $start = microtime();
    $filename = ‘cache/’.md5($_SERVER['REQUEST_URI']).’.html’;
    $cached = false;
    $time = 12 * 60 * 60; // Время кеша в секундах (4*60*60 = 4 часа)
    $stat = 0; // Установите 1 для вывода времени загрузки страницы (по умолчанию 0) 

    if (file_exists($filename)) {
    if ((time()-filemtime($filename))<$time) {
    $cached = true;
    } else {
    unlink($filename);
    $cached = false;
    }
    }
    if ($cached) {
    readfile($filename);
    } else {
    ob_start();
    // WP
    define(‘WP_USE_THEMES’, true);
    require(‘./wp-blog-header.php’);
    //
    $text = ob_get_clean();
    $fh = fopen($filename, ‘w+’);
    fwrite($fh, $text);
    fclose($fh);
    echo $text;
    }
    $finish = microtime();
    if ($stat==1) echo $finish-$start;
    ?>

  3. Замените время кеширования по умолчанию 12 часов:
    $time = 12 * 60 * 60;
  4. Вот и всё, если необходимо удалить кеш просто очистите папку.

Лучшее кеширование в wordpress

Имею несколько сайтов с большой посещаемостью...
article post