В Оружейной веб-мастера" читают о том, как создать сайт или блог на Wordpress, как раскрутить сайт или блог самостоятельно, а также о том, как заработать на своём сайте и получать пассивный доход в Интернет.

Ускоряем загрузку блога или Плагин WP Hyper Cache

256328_stopwatch_1

Здравствуйте, друзья! :)

После праздничной (и предпраздничной, и послепраздничной) суеты продолжаем ковырять гранит блоговедческой науки. :) Благодаря постоянному читателю “Оружейной” Анатолию (annasel.ru) я заинтересовался темой ускорения загрузки блога, а конкретнее – ускорением с помощью кэширования страниц. Проще всего кэширование на WordPress организуется с помощью плагина WP Hyper Cache, установку и настройку которого мы и рассмотрим в этой статье.

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

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

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

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

Скорость загрузки важна не только для удобства посетителей. Это один из факторов ранжирования сайтов в поисковой выдачи.

Использование плагина WP Hyper Cache – самый простой, хотя и не единственный вариант организовать кэширование в блоге на WordPress.

Установка Wp Hyper Cache

Обычным образом устанавливаем плагин, но не спешим его активировать.

Вместо этого запускаем Filezilla или другой FTP-клиент и открываем для редактирования файл wp-config.php, лежащий в корневой папке блога. О том, как это сделать, написано в статье “Доступ к блогу с помощью FTP”. Не забывайте, что изменить файл можно и с помощью управления файлами, которое предоставляет ваш “Личный кабинет” на хостинге.

Для установки WP Hyper Cache нужно внести изменения в wp-config.php

Правим файл настроек wp-config.php

Наша задача включить в WordPress возможность кэширования. Для этого надо добавить строку “define(‘WP_CACHE’, true);” в файл настроек wp-config.php. У меня этот файл выглядит так (фрагмент):

/**
* WordPress Localized Language, defaults to English.
*
* Change this to localize WordPress. A corresponding MO file for the chosen
* language must be installed to wp-content/languages. For example, install
* de.mo to wp-content/languages and set WPLANG to ‘de’ to enable German
* language support.
*/
define (‘WPLANG’, ‘ru_RU’);
define (‘FS_METHOD’, ‘direct’);
define(‘WP_DEBUG’, false);
define(‘WP_CACHE’, true);
/* That’s all, stop editing! Happy blogging. */
/** WordPress absolute path to the WordPress directory. */

if ( !defined(‘ABSPATH’) )
define(‘ABSPATH’, dirname(__FILE__) . ‘/’);Рекомендуется расположить “define(‘WP_CACHE’, true);” после “define (‘WPLANG’, ‘ru_RU’);”, но перед “if ( !defined(‘ABSPATH’) ) define(‘ABSPATH’, dirname(__FILE__) . ‘/’);”. 

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

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

Внимание! Если никаких тревожных сообщений в окне с настройками нет, значит плагин работает нормально. Если же плагин сигнализирует о неисправностях, то, возможно, он не может добраться до папки, куда предполагается складывать кэшированные копии страниц. В этом случае надо установить права доступа 777 на папку wp-content или wp-content/ или wp-content/cache/hyper-cache/. Это тоже можно сделать с помощью управления файлами в личном кабинете на хостинге или посредством FTP-клиента Filezilla (щелчок правой кнопкой мыши на папку – “Права доступа к файлу”).

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

Настройка WP Hyper Cache

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

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

Под каждой группой настроек есть кнопка “Обновить”. Не забывайте нажимать ее, если все-таки измените что либо.

“Тайм-аут кэшированных страниц”. По умолчанию 1440 минут (сутки). Ну, пусть будет так.

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

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

“Кэширование RSS”. Лучше не надо. Мне не нравится идея кэшировать новости. Одно противоречит другому. Все-таки мой блог довольно часто обновляется.

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

“Включить сжатие” и “Использовать дисковое пространство”. Я снял обе галочки, т.к. встречал мнение, что экономия на пересылке сжатого текста будет мизерной, но само сжатие тоже потребует времени. Если у вас иное мнение, пожалуйста, аргументируйте его в комментах.

“Перевод” (а точнее БЕЗ перевода). Это перевод страницы настроек. Мне кажется роднее на русском, поэтому я не стал ставить эту галочку. :)

“Disable Last-Modified header”. Понятия не имею, что это такое. Лучше не буду трогать.

“Кэширование главной страницы” (а точнее ОТКЛЮЧЕНИЕ ее кэширования). Имеет смысл отключить, если главная страница обновляется очень часто. Например, если на ней расположен мини-чат или лента новостей с других ресурсов. Тогда сервер будет постоянно обновлять ее кэш, а это лишняя нагрузка.

“Кэшировать редиректы”. Пусть кэширует.

“Кэшировать страницу 404″. Страницу 404 блог покажет заблудившемуся пользователю. Пусть кэшируется. Если вы не знаете, как выглядит такая страница скопируйте в адресную строку вот это: seo-armory.ru/qwertyasdfghzxcvbn.

“Strip query string”. Не знаю, что это, поэтому не трогал галочку, которая по умолчанию снята.

“Кэшировать URL с параметрами”. Галочка снята, т.к. возможна несовместимость с другими плагинами. Поставить галочку придется в том случае, если у вас в блоге не включены ЧПУ. Другое дело, что если ЧПУ у вас не включены, то есть масса причин, чтобы их включить (как включить ЧПУ).

“Исключить URI”, “Исключить агенты” – не кэшировать указанные страницы блога и не кэшировать блог для определенных агентов (роботов какого-либо поисковика, например). Я ничего не указывал тут.

“Совпадение Coockie”. Если передать определенный coockie, кэш не сработает. Не знаю, зачем это нужно. Если знаете, скажите в комментах.

Заключение

Согласно данным этого сервиса, скорость загрузки некоторых страниц “Оружейной” после установки плагина выросла аж на целых полсекунды. :) По оценке браузерного плагина Page Speed, который рекомендуют установить “Инструменты веб-мастера Google”, прирост скорости был в 4 балла (78 без плагина, 82 с плагином).

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

Если ваш блог медленно загружается, то также стоит подумать, не сильно ли он загружен “тяжелым” контентом – картинками, флэшами, видео, ссылками на баннеры и счетчики, которые приходится долго грузить с других ресурсов.

Кстати, у рассмотренного плагина есть аналог WP Super Cache.

Кажется, всё. Успехов! :)

Смотрим на кошек-экстремалов и не забываем жать на кнопки “лайки” внизу. :)

С уважением, Оружейник

Ваша оценка статьи:

Ух ты! А тут еще есть:

Комментариев: 17

  1. Спасибо, Алексей, что все так подробно расписали!
    Я так понял, это ответ на мой вопрос в рубрике “Ответ/вопрос”.
    Завтра буду устанавливать и разбираться.

  2. Алексей. Уменя была такая фигня с ссылками.Поменял ссылки,сделал читаемыми, а на старых статьях остались старые и понеслось! Вот разгребаю.

    • По идее ссылки старых статей должны были автоматически измениться.

      • Алексей, привет.Ты хочешь сказать что старая постоянная ссылка, находящаяся в статьях автоматически исправляется на новую. У меня такого не произошло. Новые статьи идут с новой постоянной ссылкой, а по ссылкам в старых статьях попадаю в “ошибка 404″.Захожу в эту статью, меняю постоянную ссылку на новую и порядок все работает.

        • Да, у меня старые ссылки изменились автоматически. Возможно, дело в том, что у меня установлен плагин Platinum SEO, и в его настройках стоит “галка” 301-го редиректа. Хотя вроде WordPress и сам должен уметь делать перенаправление при изменении адресов.

  3. Спасибо за совет, пойду поковыряюсь. Буду ставить плагин platinum SEO. Не забыть бы про галку 301 редиректа.

  4. Да, хотел сказать про “Это вы читали”, просто бесподобно!

  5. По поводу плагина SEO Plantinum поставил, активировал. А он будет блокировать внешние ссылки, тогда надо деактивировать WP-NoRef? или я ошибаюсь?

  6. Значит тогда плагин WP-NoRef оставляем.Вобще мне твои кнопочки нажимать нравится, особенно ту , что над заголовком записи. Не все это понимают.

  7. Хороший и нужный плагин!

  8. Сейчас ребёнок со школы придёт и мы сюда вернёмся, посмотреть смешное видео.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Пожалуйста, скопируйте этот пароль:

И вставьте его сюда (антиспам):

Кстати...

А у тебя есть бесплатная подписка на "Вестник Оружейной"?


Я буду рассказывать тебе
обо всех новостях.

Или так:

Твой e-mail: