Как установить и настроить W3 Total Cache в WordPress

Часто пользователи жалуются на то, что их сайты медленно загружаются. И любой из них хочет узнать секрет быстрой загрузки сайта на WordPress. Помимо хорошего веб-хостинга и корректно написанных плагинов, вам стоит убедиться в том, что вы используете, собственно, кеширование и CDN (content delivery network — сеть доставки контента). Для каждого нового сайта мы используем плагин под названием W3 Total Cache. В виду частых вопросов от пользователей мы решили написать пошаговую инструкцию о том, как установить и настроить W3 Total Cache для новичков.

В этой статье мы покажем вам как установить W3 Total Cache и настроить его на максимальное быстродействие. Также мы покажем вам как комбинировать W3 Total Cache с сервисом CDN, чтобы ваш сайт загружался еще быстрее.

Прежде, чем начать, мы рекомендуем проверить быстродействие вашего сайта с помощью инструментов Google Page Speed и Pingdom Tools. Таким образом вы сможете сравнить результаты ДО и ПОСЛЕ.

Ниже скриншот результатов Pingdom на примере домена WPBeginner:

wpbpingdomnov21[1]

Давайте приступим к настройке W3 Total Cache.

Что такое W3 Total Cache?

W3 Total Cache — это самый быстрый и наиболее функциональный плагин WordPress для оптимизации производительности. Им пользуются множество популярных сайтов, включая: AT&T, Mashable, Smashing Magazine, WPBeginner и миллионы других. W3 Total Cache улучшает юзабилити вашего сайта путем улучшения производительности вашего сервера, кеширует практически любой аспект вашего сайта, уменьшает скорость загрузки и предоставляет прозрачную интеграцию сетей доставки контента (CDN).

Устанавливаем W3 Total Cache в WordPress

Прежде, чем вы установите W3 Total Cache, необходимо убедиться, что вы удалили все другие плагины кеширования. Если вы не сделаете этого до активации, у плагина могут возникнуть проблемы в работе.

Переходим в административную панель WordPress и нажимает на Плагины » Добавить новый. Выполняем поиск W3 Total Cache и видим результаты вроде тех, что на скриншоте ниже:

installw3totalcache[1]

Нажимаем на кнопку Установить сейчас, а затем активируем плагин.

Настройки и конфигурация W3 Total Cache

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

General Settings

Вы можете перейти в General Settings, кликнув на меню Performance в административной панели WordPress. Здесь мы будем настраивать плагин, и начнем с общих настроек. Убедитесь, что вы находитесь именно на странице General Settings, а не на рекламной странице Dashboard, которая есть у этого плагина.

w3totalcache-general-settings[1]

Что такое Page Cache?

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

pagecache[1]

Как видно на картинке, обычно, когда новый пользователь приходит на ваш сайт, WordPress выполняет PHP скрипты и выполняет MySQL-запросы к базе данных для того, чтобы найти запрашиваемую страницу. Затем PHP парсит данные и генерирует страницу. Этот процесс потребляет ресурсы сервера. При включенном же кешировании, кеш позволяет вам пропустить всю загрузку с сервера и отобразить кешированную копию страницы, когда ее запросит пользователь.

Для хостинга, которые используют большинство новичков, способ Disk:Enhanced крайне рекомендуется. Вам необходимо отметить галочку Enable Page Cache и сохранить все изменения.

page-cache-w3total[1]

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

Также мы пропустим Minify, Database Cache, и Object Cache. Причина этого заключается в том, что не все серверы обеспечат оптимальные результаты с этими настройками. Следующей опцией, которую вы увидите, будет Browser Cache.

Что такое Browser Cache?

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

Настройка Browser Cache в W3 Total Cache устанавливает лимит времени кеша браузера. Учитывая то, что вы не меняете свой логотип на сайте каждый день, наличие статических файлов типа этого, кешируемых на 24 часа, совершенно не повредят. Просто отметьте Enable рядом с настройкой Browser Cache и кликните на кнопку сохранения изменений. После этого давайте посетим страницу Performance » Browser Cache для более детальной настройки.

browser-cache-options[1]

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

Что такое CDN?

CDN расшифровывается как Content Delivery Network (Сеть доставки контента) и позволяет вам распределять ваш статический контент по различным облачным сервисам, а не хранить его на вашем одном хостинге. Это позволяет снизить нагрузку на сервер и ускорить ваш сайт.

W3 Total Cache поддерживает MaxCDN, Amazon S3, Rackspace Cloud, и Amazon Cloud Front. Этот раздел применим только к тем сайтам, которые используют или планируют использовать CDN.

Мы пользуемся MaxCDN и расскажем, как настроить его на использование с плагином W3 Total Cache. Первое, что нужно сделать, это создать Pull Zone в вашем аккаунте MaxCDN. Войдите в свой профиль MaxCDN, кликните на Manage Zones, а затем нажмите на кнопку Create Pull Zone.

maxcdn[1]

На следующей странице вас попросят указать детали для вашей pull zone.

  • Pull Zone Name: Просто задайте любое имя этой зоне, чтобы вы могли ее потом легко идентифицировать в своем аккаунте MaxCDN.
  • Origin Server URL: Введите адрес вашего сайта на WordPress, начиная с http:// и заканчивая слешем / в конце.
  • Custom CDN Domain: введите любой поддомен, например: cdn.wpincode.com
  • Label: Укажите описание для этой pull zone.
  • Compression: Включение сжатия сохранит вам трафик и канал связи, поэтому крайне рекомендуется отметить эту галочку.

Скриншот того, как будет выглядеть все вышеуказанное, ниже:

maxcdnpullzonedetails[1]

Нажмите на кнопку Create и MaxCDN создаст Pull Zone. На следующей странице он отобразит вам URL вроде “wpb.wpincode.netdna-cdn.com”, который необходимо скопировать и вставить в текстовый файл, потому как он понадобится нам позже.

Теперь, когда мы создали Pull Zone, следующим шагом будет настройка зон контента. Это можно сделать, открыв вашу консоль MaxCDN. Нажмите на кнопку manage рядом с вашей только что созданной pull zone. На следующей странице кликните на вкладку Settings. Целью создания зон контента является добавление поддоменов, чтобы мы могли улучшить юзабилити путем постановки в очередь на загрузку контента с различных поддоменов в браузер пользователя. Для этого нажмите на кнопку Custom Domains и добавьте несколько поддоменов. Обратите внимание на скриншот ниже:

maxcdnmultiplecustomdomains[1]

После того, как вы добавили собственные домены, просто нажмите на кнопку Update.

Следующим шагом будет указание записей CNAME для поддоменов. Большинство приличных хостинг-провайдеров предоставляют в распоряжение пользователей панель управления cPanel для настройки хостинга. Мы будем описывать как указать записи CNAME в cPanel.

Зайдите в панель управления хостингом cPanel и выберите Simple DNS Zone Editor под Domains.

cname1[1]

На следующей странице вы увидите форму с двумя полями. Введите название поддомена, которое вы указывали при создании зон контента. Например, введите cdn для cdn.wpincode.com.

cPanel автоматически заполнит целый домен. В поле CNAME введите ссылку, предоставленную MaxCDN, когда вы создавали pull zone. Эта та самая ссылка, которую мы просили вас сохранить в текстовый файл.

cname2[1]

Повторите эту процедуру для всех ваших поддоменов, например cdn1, cdn2 и т.д. Запомните, что только меняться будет только поле названия, а поле CNAME всегда должно соответствовать ссылке, предоставленной вам MaxCDN для вашей pull zone. После того, как вы создадите записи CNAME для всех поддоменов, настанет время вернуться в WordPress и настроить MaxCDN для работы с W3 Total Cache.

Переходим в Performance » General Settings. Прокручиваем страницу до блока настроек CDN. Отмечаем галочкой Enable и выбираем MaxCDN из выпадающего списка CDN Type. Кликаем на кнопку Save All Settings.

enable-maxcdn-w3totalcache[1]

После сохранения настроек вы увидите уведомление, сообщающее о том, что вам необходимо указать данные в полях “Authorization Key” и “Replace default hostname with”, а также выбрать pull zone. Кликните по ссылке “Specify it here” и W3 Total Cache перебросит вас на страницу CDN.

setup-maxcdn-wordpress1[1]

На этой странице кликните на кнопку Authorize. Данное действие перенаправит вас на сайт MaxCDN, где вам нужно сгенерировать authorization key. Скопируйте и вставьте этот ключ в W3 Total Cache. В “Replace site’s host name with” введите поддомен, который вы создали ранее.

maxcdn-w3totalcache-api[1]

Сохраните все изменения и всё. Ваш сайт теперь настроен на обработку статических файлов с помощью MaxCDN. Сейчас, если вы загрузите ваш сайт, ссылки изображений должны обслуживаться на поддомене CDN, а не на вашем реальном домене. Например:

http://www.wpincode.com/wp-content/uploads/2010/08/w3totalcachecdnconfig.gif

будет заменен на:

http://cdn.wpincode.com/wp-content/uploads/2010/08/w3totalcachecdnconfig.gif

Теперь, если какие-либо из статических файлов не загружаются с CDN, то, вероятно, это означает, что вам нужно указать их в списке произвольных типов файлов в W3 Total Cache. Нам, например, потребовалось это сделать для плагина OIO Publisher, который используется для управления рекламными блоками. Если вы перейдете на страницу настроек CDN, то увидите Advanced option:

advance-cdn-w3totalcache[1]

Просто добавьте все файлы/папки, которые вы хотите включить в CDN. Также, если вы заметили, тут есть список для исключенных файлов. Если вы решите незначительно доработать дизайн сайта, ваш style.css обновится не сразу. Поэтому его можно поместить в указанный список файлов на время, пока вы проделываете изменения в дизайне. Если же вам нужно выполнить единоразовую очистку, это можно сделать из консоли MaxCDN.

Все, о чем мы говорили до сих пор, будет работать на большинстве хостингов. Однако, у W3 Total Cache намного больше настроек. Мы постараемся объяснить, зачем они нужны и почему их не стоит активировать на всех сайтах подряд.

Minify

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

Database Caching

Database caching (кеширование базы данных) уменьшает нагрузку на сервер путем кеширования SQL запросов. Это уменьшает время обработки запросов к базе данных (для небольших сайтов это время может быть совсем незначительным). Когда мы начали использовать этот тип кеширования, то сильно возросла нагрузка на сервер. Наш хостер порекомендовал нам отключить ее. Вместо этого, он активировал для нас встроенное SQL кеширование. Снова таки, эту настройку стоит использовать на свой страх и риск. Можно попробовать включить ее и посмотреть как сильно она влияет на загрузку сайта. Если же влияние незначительно, то лучше отключить. Большинство хостингов также рекомендуют не использовать ее.

Object Caching

Если у вас очень динамический сайт, тогда использование Object Caching вам поможет. Он обычно используется, если у вас есть сложные запросы к базе данных, которые очень затратно по ресурсам постоянно генерировать. Большинству новичков эта опция не понадобится.

Теперь, когда вы все настроили, лучше всего будет создать резервную копию вашей конфигурации W3 Total Cache. Не стоит терять наработанные конструкции. Для этого необходимо вернуться на страницу General Settings плагина W3 Total Cache. Здесь вы увидите раздел Import / Export Settings. Кликните на Download the settings file from your server.

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

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

По всем вопросам и отзывам просьба писать в комментарии ниже.

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

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
  • agidulyan

    Спасибо за детальную статью. Поставил. Но почему-то при первой загрузке страницы выдает «Не удается отобразить эту страницу». Обновляешь и открывается быстро. С точки зрения юзабилити это неправильно — посетители сайта ж не будут два раза нажимать. Что в настройках не так? Просьба посоветовать.

  • Денис

    Здравствуйте коллеги. Пытался самостоятельно настроить плагин W3 Total
    Cache, столкнулся с рядом проблем: 1) пропадают все css стили и на
    страницах сайта отображается только фото и текст 2) сервер падает через
    5-7 минут после включения плагина (у меня VPS) думаю это происходит из
    за того, что при первичной настройке плагина, я по невнимательности
    поставил какие-то некорректные данные. 3) перестают отрабатывать
    некоторые важные элементы сделанные на javascript, такие как скольжение
    сайдара и др. Нужна помощь в настройке этого плагина — цель — в сервисе
    pagespeed/insights от гугла, получить хорошую скорость загрузки
    страницы. Помощь нужна в форме скайп сессии с трансляцией экрана — я
    демонстрирую экран, вы говорите куда зайти, какие значения поставить и
    т.д. Рассчитываться могу вебмани или яндекс деньги. Напишите пожалуйста в
    личку 1) какая цена в час, вас устроит за эту услугу 2) сколько времени
    (приблизительно) нам нужно будет потратит на настройку 3) какой ваш
    опыт в настройке и использовании данного плагина. Заранее благодарю, жду
    ваших сообщений.

    • ADv

      Без предварительного анализа сайта сразу кликать по опциям — не рационально.
      Нужно ведь сначала понять, что не позволяет сайту быстро загружаться, а после — оптимизировать эти моменты.
      Пункты 1 и 3 решаются без предварительного анализа. Пункт 2 — нужно хотя бы взглянуть на лог ошибок.
      Ну и насчет выжать максимум из pagespeed/insights — посмотреть бы на сайт для начала.
      Я к тому, что в форме скайп-сессии без предварительного анализа практически ничего не сделать.

      • Денис

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

        • ADv

          Напишите в скайп advokat_b

  • Алексей

    Здравствуйте. Была обычная проблема — сайт создавал большую нагрузку, порядка 105 СР при разрешенных 65. Поставил hyper cache + db cache reloaded fix, нагрузка снизилась до 70 -80 СР.

    Пользовался ими какое-то время. Отключил. Поставил W3 Total Cache. Результат ошеломляющий — порядка 45 СР.

    Проблема обнаружилась неожиданно…. Браузер гугл хром (причем только гугл хром, все остальные изввестные мне, в том числе и портативный гугл хром отображают нормально) на некоторых страницах — ПРИЧЕМ ИМЕННО НА НЕКОТОРЫХ, ВКЛЮЧАЯ ГЛАВНУЮ! выдает крякозябры. С записями тоже самое.

    http://www.evaveda.com/ — крякозябры

    http://www.evaveda.com/partnyoram/ — крякозябры

    http://www.evaveda.com/gimalajskaya-joga/ — нормально

    Есть и другой сайт, на котором я тоже установил W3 Total Cache и абсолютно та же проблема. Вероятно проблема в том, что гугл хром некорректно отображает кэшированные js или css, но почему тогда только этот браузер и только некоторые страницы? Что можно сделать?

    • ADv

      Вы уверены, что дело именно в кешировании, а не в минификации стилей и скриптов?
      В хроме, Версия 41.0.2272.101 m (64-bit), не наблюдаю описанной проблемы.

Scroll To Top