Компьютерные уроки

Кэширование WordPress блога с помощью плагина Hyper Cache — установка и настройка. Hyper Cache – настройка и использование плагина для кэширования страниц в WordPress Работа WordPress, кэширование

Flector 5

Это один из самых простых плагинов кэширования. И пусть вас не смущает слово "простой" - чрезвычайно надежный и эффективный плагин кэширования, который незаслуженно обойден вниманием владельцев блогов на WordPress (по большей части, из-за того, что автор плагина итальянец и его английский язык далек от совершенства).

Маленькое пояснение для тех, кто вообще не представляет себе, что такое кэширование. При открытии любой страницы блога WordPress формирует необходимую страницу "на лету", путем выполнения PHP-кода. На слабых серверах или при большой посещаемости время генерации страницы может очень заметно вырасти (как узнать скорость генерации страниц вашего блога читайте ). В некоторых, особо тяжелых случаях, генерация страниц может идти десятки секунд, что, конечно же, мало кого может устроить.

При такой ситуации вам необходимо либо сменить хостера (перейти на более дорогой тариф), либо воспользоваться плагинами кэширования. Какой вариант выбрать решать вам, но, на мой взгляд, если при малой посещаемости ваш сайт тормозит – надо менять хостера, а если ваш сайт тормозит лишь при большой посещаемости, то стоит воспользоваться плагинами кэширования.

Что делает плагин кэширования? Объясню на примере. Скажем, посетитель открывает главную страницу вашего блога. WordPress создает эту страницу, тратя на ее создание определенные ресурсы сервера. Плагин кэширования при этом сохраняет эту сгенерированную страницу на диске, а при следующем ее запросе посетителем отдает уже сгенерированный и сохраненный на диске вариант, не давая WordPress "у заново тратить ресурсы сервера на генерацию полностью идентичной страницы.

Просто, не так ли? Но очевидно, что у кэширования есть и недостатки. Все динамические элементы блога перестанут работать. Оно и понятно – какая динамика может быть у страницы, которая была сгенерирована месяцы назад? Всяческие плагины голосований, подсчета просмотров и т.д. и т.п. придется отключать, так как толку от них станет немного.

А как быть с таким динамическим содержимым, как, например, комментарии от посетителей? Вот с этим плагины кэширования справляются на ура. Любой плагин кэширования умеет сбрасывать кэш для страниц, которые были изменены. То есть оставил кто-то комментарий к записи – плагин кэширования удалил старую страницу из кэша и сохранил на диске новый вариант этой страницы с уже добавленным комментарием. Таким образом, ваш блог останется блогом, а не полностью статичным сайтом.

Использование плагинов кэширования имеет свои недостатки и особенности, но кэширование все равно остается самым простым способом избежать лишних трат на хостинг вашего блога. Но хватит ликбеза, вернемся к .

1 Распаковываем архив.

2 Копируем папку hyper-cache в /wp-content/plugins/ .

3 Теперь необходимо внести изменения в файл конфигурации блога
wp-config.php (он находится в корне вашего сайта). Найдите в нем строчку:

define ("WP_CACHE", true);

4 Перед активацией плагина вам необходимо установить права на запись 777 на папку wp-content (временно, только на период установки плагина – после установки верните права по умолчанию 755 назад). Это необходимо, так как при активации плагин в этой папке создаст свою папку cache , в которой и будет хранить файлы кэша.

5 Заходим в админку блога на вкладку "Плагины " и активируем плагин.

Если вы все сделали правильно, то плагин активируется. Если же вы что-то напутали, то плагин выведет об этом предупреждение. После активации плагина на вкладке "Плагины " появится такое:

Не удивляйтесь непонятному "вкраплению" – так надо.

Настройка плагина находится в "Параметрах\Hyper Cache ". Плагин переведен на русский язык, но криво и не полностью. Однако настраивать его вам практически не придется – настройки по умолчанию идеально подходят практически для любого сайта. Ну, за исключением времени жизни кэша.

Впрочем, по порядку. Начнем с основного:

Здесь надо править только таймаут кэшированных страниц. Смело ставьте цифру 0 – это значит вечный кэш до изменения содержимого. Нет никакого смысла ограничивать кэш временем в 1440 минут (сутки), если он все равно сбрасывается при любом изменении содержимого блога.

Остальные настройки здесь оставляйте без изменений – это идеальный вариант для большинства блогов. Если вы добавили или изменили статью в блоге – кэш будет сброшен. Если кто-то оставил комментарий – будет сброшен кэш страницы с комментарием, а также остальные связанные страницы (связаны они просто – комментарий может выводиться в сайдбаре на главной странице или просто числом у статьи).

Играться с настройками стоит только на очень сильно посещаемом сайте, на котором каждую минуту кто-то оставляет комментарии. Тогда смысла в кэшировании не будет, если кэш будет сбрасываться каждую минуту. Именно в таком случае стоит ставить таймаут в 1440 минут и "Ничего" в "Режим аннулирования кэша". При таких настройках сайт будет обновляться лишь раз в сутки, но это единственный способ снижения нагрузки при очень сильно посещаемом сайте.

Следующая часть настроек плагина касается мобильных устройств:

Зачем вообще нужны эти настройки? Некоторые плагины вроде или WordPress Mobile Pack создают отдельную версию вашего блога для мобильных устройств. Если плагин закэширует страницу мобильной версии сайта, то она же будет показана и для обычных посетителей. Понятное дело, что видеть на экране 24 дюймового монитора сайт, сверстанный для айфона, никому не хочется. При включении данных настроек плагин будет создавать две версии кэша – для обычных и для мобильных устройств, которые не будут пересекаться. Если у вас не установлены данные плагины, то эта часть настроек плагина вам совершенно не нужна.

Следующие настройки касаются сжатия кэшированных страниц:

Настройки по умолчанию указывают плагину хранить и отсылать архивированные версии закэшированных страниц. Это сохраняет место жесткого диска на сервере и увеличивает скорость загрузки страниц посетителями. При любых проблемах (белые страницы, "крякозябры" и т.д.) эти настройки следует отключить. Архивированные кэшированные страницы на сервере хранятся в папке "wp-content/cache/hyper-cache/ ":

Следующая часть настроек плагина называется экспертной:

Вот здесь есть некоторая путаница при выставлении некоторых опций. Галка на опции "Перевод " отключает перевод и плагин будет использовать английский язык. То же самое с опцией "Кэширование Домашней " – галка отключает кэширование главной страницы для всех пользователей.

Из важного в этой части настроек следует отметить опцию "URL с параметрами ". Если в вашем блоге формат постоянных ссылок установлен "По умолчанию" ("Параметры\Постоянные ссылки"), то эту опцию необходимо включить. Если ее не включить, то плагин не будет кэшировать страницы, в урле которых будет содержаться знак вопроса, а следовательно, большая часть вашего сайта кэшироваться не будет. C другой стороны, существует много плагинов, чья работа зависит от передаваемых в урле параметров и включение данной опции может испортить работу данных плагинов. Будьте осторожны!

Последняя часть настроек плагина касается фильтров, которыми можно отключить кэширование для определенных страниц или для определенных пользователей:

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

Впрочем, если очень-очень надо исключить от кэширования определенные страницы или рубрики, то можно воспользоваться вот таким кодом:

Вставлять данный код лучше всего в header.php . В результате любая страница, в урле которой будет слово "rasnoe" будет исключаться от кэширования.

Я долго описывал настройки, но на деле вам, скорее всего, придется лишь изменить таймаут кэшированных страниц. Плагин не кэширует страницы зарегистрированных пользователей, так что если вы залогинены в блоге, то кэшированные страницы вы не увидите. Проще всего проверить работу плагина, зайдя на блог из другого браузера и открыв в нем несколько страниц. На странице настроек плагина в самом начале появится что-то типа:

Понятно из скриншота, что в кэше 5 сохраненных страниц, а следующий процесс чистки будет произведен в 16:21. Что это значит? Как я уже говорил выше – плагин умеет сбрасывать кэш, если добавился комментарий или изменилась статья. Но сразу он старые версии кэшированных страниц не удаляет, он только сохраняет новые кэшированные страницы, а устаревшие варианты удалит согласно времени, указанному в "Cleaning process".

Я это рассказываю, чтобы вы не удивлялись, как на сайте из 100 страниц вдруг находится 300 кэшированных файлов – из этих 300 страниц 100 будут актуальными, а 200 устаревшими.

Иногда, по какой-то причине, устаревшие файлы не удаляются плагином, а так и остаются висеть. Мешать они не мешают, но для очистки места на диске стоит иногда нажимать на кнопку "Clear Cache":

При нажатии на эту кнопку все файлы кэша будет удалены. Этой кнопкой стоит пользоваться при любом изменении блога, о котором плагин не может знать - скажем, если вы поправили файлы шаблона.

Кэшированные страницы отличаются от сгенерированных лишь одним – плагин в конец таких страниц добавляет отладочную информацию вида:

Время в этой строке указано без учета часового пояса.

Если вам необходимо удалить плагин, то просто деинсталлировать и удалить файлы плагина недостаточно. Надо еще отменить изменения в файле wp-config.php , а также удалить файл advanced-cache.php из папки wp-content . Лишь после этого плагин будет корректно удален.

На мой взгляд, один из самых удобных для рядового пользователя плагинов кэширования. Минимум настроек, максимум функциональности. Даже у самого дешевого или бесплатного хостера данный плагин позволит легко держать блог с несколькими тысячами посетителей в день.

  • htaccess кэширование сохраняет содержимое веб-страницы на локальном компьютере, когда пользователь посещает ее;
  • Использование кэша браузера – веб-мастер дает указания браузерам, как следует рассматривать ресурсы.

Когда браузер отображает веб-страницу, он должен загрузить логотип, CSS файл и другие ресурсы:


Кэш браузера «запоминает » ресурсы, которые браузер уже загрузил. Когда посетитель переходит на другую страницу сайта, логотип, CSS файлы и т.д. не должны загружаться снова, потому что браузер уже «запомнил » их (сохранил ). В этом заключается причина того, почему во время первого посещения загрузка веб-страницы занимает больше времени, чем при повторных.

Когда вы используете кэширование, файлы веб-страницы будут сохранены в кэше браузера. Страницы будут загружаться в разы быстрее при повторных посещениях. Также будет с другими страницами, которые используют одни ресурсы.

Как включить кэширование в браузере

  • Измените заголовки запроса ресурсов, чтобы использовать кэширование;
  • Оптимизируйте свою стратегию кэширования.

Изменение заголовков запроса

Для большинства людей единственный способ кэширования сайта htaccess заключается в том, чтобы добавить код в файл .htaccess на веб-сервере.

Файл .htaccess контролирует многие важные настройки для вашего сайта.

Кэширование браузера через файл.htaccess

Приведенный ниже код указывает браузеру, что именно кэшировать и как долго это «запоминать «. Его следует добавить в начало файла .htaccess :

## EXPIRES CACHING ## ExpiresActive On ExpiresByType image/jpg "access 1 year" ExpiresByType image/jpeg "access 1 year" ExpiresByType image/gif "access 1 year" ExpiresByType image/png "access 1 year" ExpiresByType text/css "access 1 month" ExpiresByType text/html "access 1 month" ExpiresByType application/pdf "access 1 month" ExpiresByType text/x-javascript "access 1 month" ExpiresByType application/x-shockwave-flash "access 1 month" ExpiresByType image/x-icon "access 1 year" ExpiresDefault "access 1 month" ## EXPIRES CACHING ##

Сохраните файл .htaccess , а затем обновите веб-страницу.

Как установить время кэширования для различных типов файлов

В приведенном выше коде заданы промежутки времени. Например, 1 year (1 год ) или 1 month (1 месяц ). Они связаны с типами файлов. Приведенный выше код устанавливает, что .jpg файлы (изображения ) следует кэшировать в течение года.

Если бы вы хотели изменить это, чтобы и JPG изображения кэшировались в течение месяца, то вы бы просто заменили «1 год » на «1 месяц «. Указанные выше значения кэширования через htaccess оптимальны для большинства веб-страниц.

Метод альтернативного кэширования для.htaccess

Описанный выше метод называется «Expires «, он помогает с кэшированием большинству новичков. После того, как вам станет проще работать с кэшированием, можете попробовать другой метод кэширования Cache-Control , который дает больше возможностей.

Возможно, что метод Expires не сработает на вашем сервере, в этом случае вы возможно захотите попробовать использовать Cache-Control .

Cache-Control

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

Пример использования в файле .htaccess :

# 1 Month for most static assets Header set Cache-Control "max-age=2592000, public"

Приведенный выше код устанавливает заголовок Cache-Control в зависимости от типа файла.

Как работает Cache-Control

Рассмотрим упомянутую выше строку кода кэширования в браузере htaccess :

# 1 Month for most static assets

Данная строка — просто примечание. Файл .htaccess игнорирует строки, начинающиеся с символа # . Это примечание рекомендуется, так как у вас может быть несколько различных наборов данных в качестве решения для кэширования файлов:

Упомянутая выше строка говорит, что, «если файл будет одним из этих типов, то мы сделаем что-то с ним… »

Самое важное в этой строке то, что в ней перечислены различные типы файлов (CSS , JS , JPEG , PNG и т.д. ) и что инструкции кэширования следует применять к этим типам файлов. Например, если вы не хотите, чтобы JPG файлы кэшировались в течение указанного периода времени, можете удалить «JPG «. Если вы хотите добавить HTML , то нужно в этой строке указать «HTML «:

Header set Cache-Control "max-age=2592000, public"

В упомянутой выше строке установлены фактические заголовки и значения:

  • Часть «Header set Cache-Control » — устанавливает заголовок;
  • Переменная «max-age=2592000 » – указывает, сколько времени займет процесс кэширования (в секундах ). В этом случае мы осуществляем кэширование в течение одного месяца (2592000 ) секунд;
  • Часть «public » сообщает о том, что это общедоступно.

Приветствую, друзья. Плагин Hyper Cache, о настройках которого сегодня пойдет речь, существенно снижает нагрузку на сервер хостинга за счет кэширования страниц. Все поклонники WordPress любят эту CMS за ее гибкую настройку, простоту в работе и огромную функциональность. Но, за все преимущества приходится платить, в данном случае, платой является очень высокая требовательность к серверным ресурсам.

Вебмастера, которые имеют Вордпресс проекты с высокой посещаемостью подтвердят, что серверная нагрузка движка очень велика и если ничего с ней не делать, то:

  • как минимум, блог будет медленно грузиться, что создаст не комфортные условия пользователям и будет ухудшать поведенческие факторы;
  • как максимум, хостинг будет предъявлять претензии по поводу превышения допустимой нагрузки и предложит перейти на более дорогой тарифный план, грозя отключением (я такие письма получал).

WordPress имеет массу важных и полезных плагинов. Для каждого проекта одни нужны, другие не нужны, но существует группа таких, использование которых обязательно на каждом ресурсе. В их число входит Hyper Cache (наравне с такими плагинами, как и ).

Как работает Hyper Cache

Но есть один нюанс, без которого «не полетит». Так как данный плагин глубоко влазит в работу движка, ему нужны специальные разрешения, иначе, доступа у него не будет.

Для этого, после активации плагина, в файл wp-config.php вашего блога надо добавить следующую строчку:

Define("WP_CACHE", true);

Когда активируете плагин – он вам сам подскажет, что требуются изменения в файле. Я вставил в самом конце, вот так:

После этого плагин должен заработать (у меня заработал). Если что-то не включится, то пишите в комментариях, попробуем разобраться вместе.

Настройка плагина Hyper Cache

В принципе, сразу после установки плагин уже начнет работать, но более тонкие настройки, заточенные индивидуально под ваш проект будут более эффективными.

Итак, после установки и запуска плагина в панели управления в разделе «Настройки» у вас чудесным образом материализуется пункт, с соответствующим плагину названием. Переходите туда.

Настройки имеют 4 вкладки. Плагин частично переведен – где-то надписи на русском, где-то на английском, причем, перевод явно машинный (не всегда понятно, что имеется ввиду) – может быть в новых версиях сделают нормальный перевод, тогда будет попроще. Рассмотрим каждую из вкладок.

Главные настройки

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

  1. Пункт про «Disable translations » позволяет отключить встроенный переводчик, если поставите галочку. В этом случае весь текст плагина должен отображаться в оригинале на английском.
  2. Далее, в пункте «Кэшированные страницы, будут действительны в течение » указывается период, в течение которого будут храниться кэшированные версии документов. По истечении данного времени кэш сбрасывается и создается по новой при очередном посещении пользователем. Указать можно любое время, зависит от того, как часто вы обновляете материалы сайта. У меня стоит 24 часа, если у вас блог обновляется очень редко, то можете сделать и в разы больше. Чем реже будут пересоздаваться файлы с кэшем, тем меньше серверных ресурсов будет тратить сайт на их создание.
  3. Следующие 2 пункта про сжатие данных (compression). Первый «Включить сжатие » включает сжатие данных при передаче информации, второй «Enable on-the-fly compression » включает сжатие «на лету» для страниц, которых нет в кэше.
  4. Можно настроить обновление кэша последних записей в том случае, если обновлена главная. Для этого в «Когда обновлена домашняя страница, обновятся остальные. » укажите количество постов, которые должны меняться. У меня это поле стоит пустым, так как контент главной не влияет на содержимое статей (зависимость, скорее, обратная – об этом следующие пункты).
  5. Следующие 2 строчки позволяют включить обновление копий домашней страницы, архивов, тегов и рубрик при изменении постов. Допустим, вы отредактировали статью, сохранили ее и, если стоит галочка в первой строке пункта «Когда записи отредактированы », обновится кэш категорий и рубрик, если стоит галочка во второй, то будет пересохранена главная страница сайта. Если у вас настроено редкое обновление сохраненных копий (п.2), то эти пункты стоит включить. У меня все данные в кэше обновляются каждые 24 часа, поэтому я не активирую этот блок – все равно через сутки все обновится по графику.
  6. Пункт аналогичен предыдущему, только «При написании комментария » обновляет информацию в случае появления новых комментариев к записям.
  7. «Папка кэша » позволяет сменить стандартную папку, используемую плагином для хранения данных на свою.
  8. «Далее эта функция будет выполняться через » включает опцию автоматической очистки кэша от старых неиспользуемых (несуществующих) материалов.
  9. Настройка «Разрешение кеширования браузерами » разрешает браузерам кэшировать данные с сайта на пользовательской стороне (на компьютере посетителя). Указывается время актуальности данных.
  10. HTTPS – эта настройка нужна в том случае, если ваш блог использует соответствующий протокол (у меня его нет). По умолчанию устанавливается хранение раздельного кэша для http и https протоколов.
  11. Что делает «Use readfile() » я не понял, поэтому не стал включать данную опцию.
  12. Может возникнуть ситуация, когда срок действия кэша истек, а пользователи на этот URL еще не заходили, то есть новый кэш создан не был. Но, пришел поисковый робот, вопрос – что показывать ему? В пункте «Служит ботам со страницами с закончившимся сроком действия » вы можете выбрать – показывать данные с истекшим сроком годности из кэша или отдавать обычную страницу WordPress. Я считаю, что роботам надо отдавать всегда актуальный материал, поэтому «просрочку» им показывать не стоит.

Раздел «Исключения»

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

В этой вкладке с переводом все хорошо, поэтому почти все пункты понятны без описаний. Я запретил сохранять основную RSS ленту и ленты комментариев. В любом случае они мне не нужны, так как стандартный RSS у меня заменен на feedburner.

Также отключил показ кэша для человека, оставившего комментарий – он должен видеть то, что написал – галка тут – «Don’t serve cached pages to comment authors».

Кэширование страницы с 404 ошибкой отключать я не советую, так как места ее кэш занимает немного.

Из того, что вам может пригодится:

  • Запрет на кэширование конкретных URL-ов, для этого включаете пункт «Точный адрес URI исключить» и в поле прописываете адреса нужных страниц.
  • Запрет на кэширование разделов, тогда в следующем пункте пишете адрес, с которого URL должен начинаться.
  • Исключение некоторых типов пользовательских устройств в пункте «Устройства (пользовательские) исключить». Например, если у вас отдельная версия для мобильных устройств, выдавать человеку на смартфон обычный кэш не нужно. Прописываете в этом поле с новой строки все агенты пользователей, подпадающие под фильтр – iphone, android, ipad, ipod, symbian, windows phone 7, windows mobile, opera mini, opera mobile и т.д. (я сам не знаю весь перечень, указал основные варианты, в принципе, большую часть устройств они охватывают). В принципе, этот пункт вряд ли вам пригодится. Если вы будете использовать отдельную мобильную версию ресурса, то лучше настроить его кэширование (в следующем разделе расскажу), чем отключать.
  • Не кэшировать старые записи, по которым маленький трафик. Если у вас сайт не привлекает посетителей с поиска, то посты, опубликованные давно редко кто читает, их кэширование можно отключить, чтобы не занимать место на хостинге. Указываете количество дней, через которые пост уходит в разряд старых.

Раздел «Мобильный»

Чуть выше я упоминал о том, что плагин можно индивидуально сконфигурировать для работы с мобильным и стационарным трафиком.

В этой вкладке всего 3 настройки, позволяющие определить, кому и что показывать.

Начну с низу.

Для начала необходимо указать плагину, какой посетитель будет считаться пришедшим с мобильного устройства. Для этого используем тот же список мобильных агентов (user-agent), что мы указывали на вкладке исключения (если вы рассчитывали на такие устройства). Если никаких особых указаний для мобильного трафика вы не планируете – оставляйте поле пустым и все.

Теперь выбираем режим работы, там есть 3 варианта:

  1. Использовать стандартный кэш – это вариант, при котором никакой разницы между пользователями разных устройств не будет – все получат те же самые страницы (У меня в блоге именно такой вариант, так как верстка сайта адаптивная).
  2. Кэшировать отдельно – позволяет пользователям с мобильными user-agent выдавать кэш с использованием темы оформления отличной от основной (для пользователей ПК показываете обычный шаблон, для мобильных другой – облегченный) – получается 2 разных кэша.
  3. Не кэшировать страницу – все ясно – плагин вмешиваться в работу сайта, при заходе мобильных пользователей, не будет.

Если в режиме работы был выбран вариант с раздельным кэшем, то во вкладке мобильная тема необходимо указать какая тема должна применяться для мобильного трафика (из выпадающего списка).

Про CDN

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

На работоспособности плагина эта вкладка никак не сказывается, поэтому, для себя сделал вывод, что мне пока данная настройка не нужна.

Если со временем будет больше ясности, то дополню пост. Кстати, если вы разобрались, как работать с CDN в Hyper Cache, то напишите в комментариях или дайте ссылку где почитать.

Как проверить работу Hyper Cache

После всех проведенных выше настроек надо проверить, как все работает.

Плагин не показывает кэш администратору сайта – администратор получает полную версию всегда.

Поэтому, для проверки нужно выйти из администраторской панели или открыть сайт (в котором вы не залогинены на сайте).

Дальше, нажмите сочетание клавиш Ctrl+U или щелкните правой кнопкой мыши по фону блога и выберите пункт «Исходный код страницы». Пролистайте в самый конец, там должен появиться тег с указанием того, что вы видите кэш с датой его создания – если тег есть, значит все в порядке и плагин работает.

На этом настройка и проверка закончена, теперь ваш блог будет работать быстрее, а серверных ресурсов использовать меньше.

Привет, друзья!

Прошла уже неделя, как я покинула теплые страны, и очень хочется назад. Привезла с собой пару кг манго в память о тропиках, сегодня съела последнее, печаль. А зимы в этом году в Питере не было, вот и сейчас на улице дождь и слякоть. Как здорово, что у меня есть блог, в котором можно забыться и уйти от суровой реальности.

В статье речь пойдет об одном из плагинов для кэширования WordPress-блогов. Я расскажу, что такое кэширование, зачем оно нужно и как его настроить.

Зачем нужно кэширование страниц сайта

В первую очередь стоит сказать, что кэширование позволяет уменьшить размер сайта и ускорить его загрузку.

Браузеры понимают только страницы в формате HTML. Если со статичными сайтами всё просто — есть готовая страница, которая отдаётся всем, кто захотел её посмотреть, то с CMS всё сложнее. Сайт на WordPress подключен к базе данных, и каждый раз, когда посетитель обращается к какой-либо странице, система отправляет базе запрос. А что, если сотня пользователей одновременно запросит какую-нибудь страницу? Она ведь каждый раз будет генерироваться заново, что создаст большую (и, что главное, лишнюю) нагрузку на сервер. Значит, пользователи не смогут быстро получить доступ к нужной информации (а то и вовсе хостинг отключит сайт за высокую нагрузку). Кэширование решает эти проблемы.

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

Плагин для кэширования WordPress-блога

Если у вас блог на WordPress, кэширование в нём можно реализовать с помощью плагина. Выбор есть: это могут быть WP Super Cache, W3 Total Cache или Hyper Cache. Последний и будет разобран в статье ввиду своей простоты, практически переведённого на русский язык интерфейса и хороших показателей скорости работы.

Hyper Cache — действительно оптимальный плагин кэширования Вордпресс-блога. Здесь дело больше в эффективности: Hyper Cache показывает лучшие результаты в ускорении сайтов.

Но если всё же рассматривать разные варианты, подбирайте плагин кэширования для WordPress методом проб. Например, у плагина Hyper Cache была выявлена несовместимость с плагином, NoExternalLinks. Если же у вас нет проблем с совместимостью, то выберите плагин, максимально увеличивающий скорость загрузки.

Hyper Cache для WordPress. Установка

Про установку плагинов было написано ни раз, но для новичков повторю еще раз. Есть два способа. Первый:

  • Найти на официальном сайте wordpress.org и скачать плагин Hyper Cache.
  • Зайти в панель управления.
  • Открыть раздел “Плагины”, нажать кнопку “добавить новый”.
  • Нажать “загрузить плагин”.
  • Выбрать скачанный zip-архив.
  • Нажать “Установить”.
  • Активировать плагин.

Второй проще.

Просто зайдите в панель управления в раздел «Плагины», нажмите “Добавить новый” и введите в строку поиска “Hyper Cache”. Затем нажмите на “Установить”, активируйте плагин.

Теперь плагин установлен, и его можно настраивать.

Hyper Cache: как настроить

Перейдите в настройки плагина. Как сообщает плашка вверху, вы должны добавить строчку “define ("WP_CACHE", true);” в свой файл wp-config.php. Эта строка задаст переменной “WP_CACHE” значение “true” — разрешит кэширование.

Добавить строчку можно через визуальный редактор в панели управления вашего . Откройте расположенный в корне сайта wp-config.php и после строки WPLANG добавьте нужный код define("WP_CACHE", true);

Дальнейшая настройка плагина Hyper Cache производится только в панели управления сайтом.

Плагин частично переведён, но не полностью.

С переведёнными пунктами всё понятно (время кэширования страниц определяет промежуток времени, через который информация на страницах будет обновляться; “включить сжатие” позволяет дополнительно сжимать страницы), но пункты на английском тоже есть. Разобраться с ними сложнее, поэтому тут могут возникнуть вопросы.

Как настроить непереведенные пункты:

  • Пункт “When a post receives a comment” позволяет вам выбрать, будет ли плагин обновлять данные страниц категорий и тегов, результатов поиска и главной страницы, а также количество комментариев в превью статьи. Два варианта - обновлять всё или обновлять только главную страницу (или ничего не обновлять, если галочки сняты с обеих опций).
  • В “When a post is edited” вы можете задать, будут ли вышеуказанные страницы обновляться, если вы отредактировали текст самой записи.

Остальные поля на русский переведены.

В “Исключениях” вы можете выбрать, какие страницы кэшировать не следует. Можно исключать как конкретные, предложенные самим плагином страницы (главная, ошибка 404, лента комментариев), так и собственные — просто укажите URL, и Hyper Cache не будет кэшировать эту страницу.

Если вы показываете мобильным посетителям контент, отличный от компьютерных пользователей, во вкладке “Мобильный” следует выбрать “cache separately”. В противном случае из-за Hyper Cache мобильные пользователи увидят то же, что и компьютерные.

На этом настройка Hyper Cache в WordPress закончена. Посмотрите видео о данном плагине, если хотите получить больше информации:

Заключение

Теперь вы знаете, как настроить плагин Hyper Cache. Он интуитивно понятный, с ним приятно работать, и надеюсь, с инструкцией выше у вас не возникнет проблем с его установкой. Помните о важности кэширования, ведь оно делает сайт быстрее, а это любят и пользователи, и поисковики.

Подбирать плагин кэширования в WordPress нужно осторожно. Проверяйте совместимость плагина с вашей версией WordPress: нередко новые версии плагинов не работают со старыми шаблонами WordPress и наоборот, старые аддоны не всегда поддерживают новые версии этого движка. Успехов!

P.S. Как и обещала, расскажу еще немного о путешествии в тайскую провинцию Канчанабури. Это место обрело популярность после выхода американского фильма «Мост через реку Квай», его мы кстати посмотрели, находясь там. Прокатиться на поезде по железной дороге смерти, проходящей вдоль реки, было настоящим удовольствием, такие потрясающие виды там открываются.

А после я решила сплавиться по течению реки Квай, на глазах удивленных туристов (почему-то никому и в голову не приходило купаться в реке). Маленькая белая звездочка на воде — это я:)

Желаю вам не плыть по течению, а брать судьбу в свои руки и заниматься любимым делом, например, ведением блога:) Пока!

Приветствую Всех читателей. Сегодня хочу поговорить об одном из пунктов оптимизации сайта на WordPress — ускорение загрузки страниц, ускорение работы сайта в целом. Одним из способов для выполнения поставленной задачи является кэширование. Плагинов для создания кэша предостаточно. Два популярных Hyper Cache и WP Super Cache. В этой статье выполнена настройка WordPress Hyper Cache.

Обо всём по порядку.

Работа WordPress, кэширование

CMS WordPress является отличной платформой для создания сайтов. Она лёгкая в настройке, удобная, с большим функционалом, множеством набором плагинов для реализации задачи любой сложности. В то же время нагрузка на сервер больше, чем при работе с статическими страницами.

Как работает Вордпресс? Вся информация, так же как и в Joomla и других CMS, хранится в различных частях шаблона и таблицах базы данных. Для каждого типа инфы своя таблица: записи, комментарии, данные об авторе, сайте и так далее.

Таким образом, при вызове посетителем определенной страницы она генерируется из разных частей используемого : шапка, подвал, сайдбар, контентная часть, затем подгружается содержимое базы данных. Система выполняет множество команд, отправляет необходимое количество запросов к базе данных. И этот процесс повторяется снова и снова при открытии новой страницы каждым пользователем. Так формируется страница в формате HTML. И формируется она на сервере хостинга. При увеличении посещаемости нагрузка увеличивается.

Решить данную проблему призвано кэширование.

Принцип кэширования данных

Что происходит при использовании кэширования? Посетитель переходит на сайт. WordPress выполняет запросы описанные выше и выводит страницу HTML, и одновременно сохраняет её в соответствующей папке сайта. При повторном обращении к этой странице системе нет необходимости проделывать сложную процедуру генерирования, она просто вызывает её из папки сохраненных кэшированых страниц и передаёт пользователю.

Такой приём облегчает работу сервера и ускоряет загрузку сайта в браузере.

Кэш — это своеобразное хранилище данных, с быстрым доступом информации к ним.

База WordPress содержит огромное количество плагинов. Но есть группа так называемых обязательных плагинов, установить которые необходимо на каждом проекте. Такие как плагин сеооптимизации, к примеру, SEObyYoast, плагин для резервного копирования (WordPress Database Backup), плагин кэширования.

Особенности установки Hyper Cache

Плагин устанавливается стандартным способом. Здесь подробная , чтобы освежить в памяти. Есть одно маленькое отличие. Для работы Hyper Cache после активации запросит внести изменения в файл wp-config.php.

Данный файл лежит в корне сайта. В него вносили изменения при установке WordPress, прописывали логин и пароль от базы данных.

Корректировать wp-config можно непосредственно на хостинге . Я же для таких целей использую специализированную программу Notpade++.

После сохранения и загрузки файла на хостинг плагин уже начал свою работу. Для индивидуальных настроек соответствующим Вашим требованиям нужно перейти в пункт Hyper Cache, который появился в разделе Настройки .

Плагин имеет русскоязычную версию, точнее, русский перевод. Некоторые функции не переведены, но становится понятно в общем контексте.

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

  • Удалить весь кеш — плагин создаёт папку для хранения кэшированной информации. При нажатии на кнопку удаляются все данные. При глобальных изменениях следует воспользоваться.
  • Очистка архивов и домашней — при нажатии удаляется кэш обозначенные страницы, при этом записи и остальное остаётся сохранённым.
  • Вычисление размера КЕШа — информация о размере папки на сервере.

Настройки плагина состоят из четырех разделов: Главные, Исключения, Мобильный, CDN.

Главные настройки плагина Гипер Кэш

Приступим к полному разбору каждой функции.

Disable translations — отключить переводы. При включении опции и сохранении, настройки плагина будут отображаться на родном английском языке. Если Вы ас в знаниях языка — включайте.

Кэшированные страницы, будут действительны в течение . Наверное основной пункт. Настраивается время жизни кеша. Время устанавливается в часах, по прошествии которого кэш удаляется и будет создан новый при посещении новым пользователем. На рядовые статьи которые не обновляются можно смело ставить величину порядка 1 недели и более. Создание меньшего количества файлов с кэшем уменьшает ресурсы сервера на их создание. На часто изменяющиеся страницы, естественно, время ставить меньше. Главную новостного сайта кэшировать вообще не нужно.

Включить сжатие . Сжатие страниц кеша. Гипер Кэш предупреждает: при некорректном отображении вебстраниц сайта в виде нечитаемых символов не стоит включать опцию, это значит сервер уже использует сжатие.

Enable on-the-fly compression — включить сжатие на «лету». Происходит процесс сжатия вебстраниц отсутствующих в кэше. Активация ускорит загрузку страницы, но и увеличит нагрузку.

Когда обновлена домашняя страница, обновятся остальные . Замысел функции такой. При обновлении главной страницы проекта можно указать количество постов, кэш которых требуется сбросить, то есть обновить. Не вижу смысла в этом.

Когда записи отредактированы . При редактировании статьи для отображения вновь добавленной информации посетителям сразу же, следует включить этот пункт. Здесь два варианта: обновление главной страницы, и страниц архивов, рубрик.

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

Папка кэша . Для хранения кэшированных плагин автоматически создаёт папку. С помощью этой функции можете прописать адрес созданной вами папки. Но как по мне, какая разница.

Разрешение кеширования браузерами . Наверняка Вы хоть раз при переходе на определенную страницу видели в браузере строку типа: «Вам будет показана сохранённая копия страницы». Это работа подобного плагина и данной функции. Суть её такова. При посещении Hyper Cache разрешает браузеру сохранять кэш страницы на стороне пользователя, то есть сохраняется в папке с кэшем на компьютере. При повторном обращении к этой вебстранице она будет показана с кэша компьютера, что быстрее, чем если бы показывалась со стороны сервера. Включаем данную пункт — мы же за скорость.

HTTPS . Надо активировать при использовании безопасного протокола соединения HTTPS.

Use readfile() . Опция чтения файла. Со слов разработчиков работает лучше, чем фактически используемая функция кэширования file_get_contents ().

Служит ботам со страницами с закончившимся сроком действия . Назначение функции отдавать поисковым роботам все страницы, даже с просроченным кешем. Когда такое может возникнуть? В случае когда срок хранения кеша закончился, а новый пользователь так и не посетил данный пост. Так как ботам надо скармливать актуальную информацию (возможно записи подвергались редактированию), то и нет смысла включать эту функцию.

Сохраняем главные настройки и переходим к следующему разделу.

Настройка исключения плагина Hyper Cache

В плагине есть возможность исключить некоторые страницы сайта от кэширования. Функции включаются по разным причинам.

Не кэшируйте домашнюю страницу . Главная страница личных блогов практически всегда является лентой новостей ресурса. Исключения составляют коммерческие сайты, где на «морде» находится описание. Главная является так называемой посадочной страницей. Все индивидуально. Если главная не обновляется в течении суток — можно создавать кеш, в обратном случае смысла нет.

Не кэшировать «стр.404» . Активируем.

Не кешировать ленту комментариев . Создавать кеш комментариев не стоит. Посетители должны видеть оставленные новые комментарии. Моё мнение.

Не кешировать ленту RSS комментариев . То же.

Do not cache pages with URIs — Не кэшировать страницы с URL. Можно задать конкретные страницы не подлежащие кешированию. Прописывайте каждый URL с новой строки.

Do not cache pages with URIs starting with — Не кэшировать страницы с URL, начиная с. Используется для исключения целого раздела из функции кэш. Например, сайт с постоянно обновляющимся разделом новостей, посещаемый форум.

Bypass the cache for readers with cookies — Обход кеша для читателей с помощью файлов cookie.

Bypass the cache for readers with devices (user agents) — Обход кеша для считывателей с помощью устройств. Подразумеваются приложения, осуществляющие доступ к сайтам. Например, браузер.

Bypass the cache for readers which are commenters — Обход кеша для читателей, которые являются комментаторами. При включении опции посетитель, оставивший комментарий тут же увидит его. В случае если они не модерируются администратором. Иначе будет сообщение с таким смыслом: «Ваш комментарий ожидает модерацию». Читателю становится понятно, что коммент дошел до цели, а не затерялся.

Do not cache posts older than — Не кэшируйте сообщения старше, чем. После отметки количества дней статьи переходят в разряд старых и плагин перестаёт кэшировать. Стоит включить в случае когда старые посты перестают лить трафик.

По этой теме следует отметить следующее, не касающееся создания кэширования. Периодически стоит просматривать и улучшать старые заметки. Несмотря на то, какой трафик они приносят. Информация представленная в посте устаревает, дайте посетителю новую, актуальную информацию. Возможно статьи стоят на подходе к первой выдаче и их надо «допихнуть» в ТОП. Или наоборот, посещаемость снизилась. Надо расширить семантическое ядро конкретной статьи, увеличивать поисковые запросы под которые пользователь попадет на ваш сайт. Это может быть небольшое изменения контента, добавление графиков, таблиц или медиафайлов. Всё индивидуально.

Немного отступил от темы поста. Продолжаем настраивать Гипер Кеш.

Настройки плагина Hyper Cache для мобильных устройств

Плагин позволяет выполнить настройки отдельно для мобильного трафика и настольных ПК. Воспользуемся предоставляемой возможностью.

For mobile devices — Для мобильных устройств. В этом пункте три варианта для выбора. При использовании на ресурсе адаптивного дизайна оставляйте настройки: Использовать основной кеш . В этом случае разницы просмотра страницы для пользователя ПК и с мобильного не будет.

Для мобильной версии сайта, когда посетителю показывается отличная от основного шаблона (облегченная) страница установите активным второй вариант: Использовать отдельный кеш. Тогда Hyper Cache будет создавать два разных файла кеша. При этом выборе укажите плагину какой шаблон показывать посетителю зашедшему с мобильного устройства.

Пару слов по поводу адаптивного шаблона. Всё больше людей приобретают и используют для выхода в интернет мобильные гаджеты. Смартфоны и планшеты. Трафик с этих устройств постепенно увеличивается. По статистике Яндекс Метрике на этот сайт процент посетителей с мобильных составляет в среднем 20-25%. В некоторых нишах, например, в сфере услуг, этот вид трафика является основным. Поисковые системы в аккаунтах для вебмастера при отсутствии мобильной версии сайта отмечают как замечание и советуют исправить.

Вполне вероятно, что и в поисковой выдаче ресурсы не адаптированные для просмотра на мобильных устройствах будут понижаться. Не стоит пренебрегать советами поисковиков.

Мобильная тема . Этот пункт связан с первым. При выборе отдельного шаблона выше, здесь указываете его. Иначе, оставляете по умолчанию использование активной темы сайта.

Мобильные агенты пользователей . По умолчанию указаны user-agent считающиеся как пользователи с мобильного. Есть что добавить, добавляйте.

Настойка CDN HyperCache

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

После всех настроек логично проверить, может «WordPress Hyper Cache не работает?» Делается очень просто. Откройте сайт в другом браузере. Это необходимо сделать потому, что администратору ресурса всегда показывается актуальная информация. Просмотрите исходный код, который открывается сочетанием клавиш CTRL + U. В самом низу должен появится следующий код.

Если его нет, обновите страницу и просмотрите ещё раз.

Настройка WordPress Hyper Cache на этом заканчивается. С этого момента нагрузка на сервер уменьшится и сократится время отклика вебсайта. Кеширование является только одним из пунктов оптимизации сайта. В одной из следующих статей напишу обзор способов оптимизации изображений. Здесь можете почитать как с помощью Photoshop.

Какими плагинами кеширования пользуетесь Вы на данной момент, и думаете ли использовать Hyper Cache если у Вас активирован другой.

Желаю Всем удачи и быстрых сайтов!