W3 Total Cache — установка и настройка плагина кэширования для WordPress

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


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

  • Premium Services содержит информацию о платной поддержке по всем вопросам от команды.
  • В Spread The Word предоставлена ссылка на разработчиков плагина.
  • New Relic содержит статистический обзор о производительности сайта в соответствии с машиной сервера.
  • Страница Google Page Speed Report становится доступна после настройки плагина W3 Total Cache. В этом разделе будет отображаться информация о производительности сайта и отчет о скорости загрузки страницы.

Общие настройки

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

1. Preview Mode (режим просмотра)

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

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

Используйте Preview Mode (режим просмотра) для тестирования настроек прежде, чем вы будете использовать их на сайте. Этот режим остается активным даже после развертывания настроек, пока функция не будет отключена.

2. Page Cache (кэш страницы)

Мы много говорили о кэшировании в предыдущем посте о настройке W3TC. Активировав его, можно сократить время загрузки страницы. Обычно, когда пользователь запрашивает страницу, WordPress использует PHP-скрипты и запросы базы данных, которые требуют затрат ресурсов сервера и, в свою очередь, забирает больше времени для поиска страницы.

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

Следующая опция - это Page Cache Method (метод кэширования страниц) и по умолчанию Disk: Enhanced . Эта опция зависит от типа сервера, который вы используете. Обычно опция Disk: Enhanced подходит для всех типов.

Pro Features: что это?

Shared Servers

Это виртуальные разделяемые серверы

Первые две опции - Disk: Basic и Dish: Enhanced - используются для виртуального хостинга (когда несколько сайтов разделяют один сервер).

  • Shared Server | Disk: Basic - идеально подходит для недорогого хостинга
  • Shared Server| Disk: Enhanced - рекомендуется для других хостингов

Нужно выбрать Disk: Enhanced . Если ваш сайт начинает работать медленно, а ваш хостинговый провайдер говорит о том, что он использует дополнительные ресурсы, то измените опцию на Disk: Basic или смените хостинг.

Dedicated / Virtual Server

Выделенный / виртуальный сервер.

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

Opcode: Alternative PHP Cache

Альтернативный PHP кэш. Это бесплатное Open Source PHP решение, которое кэширует PHP-код.

Opcode: eAccelerator

Ускоритель и оптимизатор PHP-кода.

Opcode: XCache

Это самый быстрый и стабильный кэш PHP Opcode, который полностью поддерживается как Linux, так и Windows.

Opcode: WinCache

Разработан специально для Windows, как Open Source-решение для кэширования PHP Opcode, кэширования файлов, уведомлений об изменениях файлов, кэш-сессии.

Multiple Server

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

3. Minify (минимизация)

Минимизация CSS- и JS-файлов и HTML-кода сокращает размер и количество файлов, которые в конечном итоге увеличивают скорость загрузки страниц.

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

Minify: включите опцию, поставив галочку

Minify Mode

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

Minify Cache Method

Вы можете еще раз просмотреть объяснение этой опции выше. Рекомендованная опция здесь - Disk .

HTML Minifier

Можно использовать стандартный (Default ) минимизатор для HTML. Если у вас возникнут какие-либо проблемы с сайтом, как например, искажение шаблона, то попробуйте использовать Tidy вместо Default. Хотя он вряд ли покажет ошибку для минимизации HTML.

JS Minifier

Можно также использовать опцию JSMin для минимизации JavaScript, которая является стандартной. В случае возникновения каких-либо проблем, попробуйте альтернативные варианты.

CSS Minifier

Опять же, в случае с CSS Minifier, можно продолжать использовать стандартные опции до возникновения каких-либо проблем.

Если возникают какие-либо трудности в функционировании сайта, как например, искажение шаблона, то причина может быть в неправильной работе CSS или JavaScript. Для устранения этих неполадок отключите опции минимизации. Часто серверы Lite Speed конфликтуют с минимизацией.

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

W3 Total cache

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

Также w3 total cache обладает довольно понятными настройками. Давайте разберем их. После установки у нас появляется боковое меню perfomance

Самая важная для нас вкладка General, она отвечает за включение или отключение дополнительных возможностей. По порядку

Toggle all caching types on or off (at once) – включить все опции, это нам вряд ли пригодится, галочку не ставим.

Page cache , очень нужная и важная вкладка, позволяет сократить время ответа от сервера за счет кэширования страниц на сервере. То есть плагин генерирует странички html, кладет из в папку кэша и отдает по запросу, экономя время на генерацию страницы apache. Page cache metod выставляется в зависимости от хостинга, в данном примере установлен для виртуального хостинга, если у Вас , выберите соответствующие параметры.

создать новый проект

включить в нём “PageSpeed Insights API ”

и создать новый public api access key (browser).

Получим на dashboard такую картинку

Verify rewrite rules – уведомление об ошибках, включить.

File locking и optimize disk оставляем выключенными.

Enable edge mode – включает режим разработчика, новые возможности. Может работать нестабильно.

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

Import Export Позволяет сохранять и загружать конфигурацию плагина.

Расширенные настройки

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

Page cache General

Cache front page – кэширование главной страницы

Cache feeds – кэширование категорий, тэгов, комментариев

Cache ssl – если Ваш сайт использует SSL шифрование

Cache URI s with query string variables – кэширование запросов поиска

Cache 404 (not found) pages – Кэширование страницы 404

Cache requests only for site.ru site address – кэш только для такого адреса сайта (без www)

Don’t cache pages for logged in users – не кэшировать страницы авторизованных пользователей (что бы не авторизованные не увидели кэш Вашей страницы)

Don’t cache pages for following user roles – Не кэшировать страницы для следующих ролей

Cache preload – кэш создается заранее, до того как пользователь запросит страницу.

Update interval – периодичность с которой создается кэш

Pages per interval – количество страниц, которое создается в созданный интервал.

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

Preload the post cache upon publish events – создание кэша при публикации поста.

Purge policy: page cache – разделы кэша, которые будут обновлены при публикации поста.

Advanced – по большому счету служебные настройки, трогать их не обязательно.

Minify General

Rewrite url structure – сокращает путь до js и css файлов

Disable minify for logged in users – выключить сжатие для авторизованных пользователей.

HTML & XML

Enable – включить

inline css minification – оптимизирует CSS

Inline JS minification – оптимизирует JS

Don’t minify feeds – не сжимает стили лент

Line break removal – удаление разрывов

Operations in areas – до тега head, только минифицировать или только объединить.

Embed type – Тип встраивания скриптов. По умолчанию – default, blocking. Лучше попробовать выбрать non-blocking using “async”.

Preserved comment removal – сохранение комментариев (в скрипте)

Line break removal – удаление разрывов (не безопасно)

Combine only – только объединить.

Preserved comment removal (not applied when combine only is active) – сохранить комментариев. Не сохраниться, если активно “только объединить”

Line break removal (not safe, not applied when combine only is active) – удаление разрывов. Не сохраниться, если активно “только объединить”

Advanced

Служебные настройки, можно ничего не менять.

Database cache General

Object cache

Maximum lifetime of cache objects: – время жизни кэша

Garbage collection interval – период удаления устаревшего кэша.

Browser cache

Вкладка General включает выбранный параметр всем группам ниже: CSS&JS HTML&XML MEDIA&OTHER FILES

Set Last-Modified header – Установит в заголовке дату последнего измнения документа.

Set expires header – время жизни кэша.

Set cache control header – новая директива жизни кэша, имеет приоритет над expires.

Set entity tag (eTag) – entity tag, метка, присваивается ресурсу, при изменении ресурса изменяется. Позволяет понять браузеру изменился контент или нет.

Set W3 Total Cache header – устанавливает в заголовке идентификатор w3 total cache.

Enable HTTP (gzip) compression – включает сжатие файлов методом deflate, не будет работать в связке с nginx.

Prevent caching of objects after settings change – запретить кэширование для указанных объектов.

Prevent caching exception list -список исключений кэширования.

Don’t set cookies for static files – не устанавливать куки для статических файлов

Do not process 404 errors for static objects with WordPress – не генерировать ошибку 404 для ненайденных статических объектов.

404 error exception list – список исключений

Extensions

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

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

Genesis Framework –фреймворк для wordpress. (платный)

WordPress SEO by Yoast – seo плагин.

Ответы на вопросы.

Обращение в службу поддержки

Инструкция по установке

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

Хотите узнать секрет быстрой загрузки сайтов на Wordpress? Помимо хорошего хостинга и правильно написанных расширений, используйте кэширование и CDN (content delivery network, сеть доставки контента). К примеру, плагин W3 Total Cache.

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

Перед тем, как начать, рекомендуется проверить производительность сайта с помощью онлайновых сервисов Google Page Speed и/или Pingdom Tools . Это следует сделать для того, чтобы сравнить прежние результаты с теми, что получатся после всех настроек.

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

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

Установка W3 Total Cache в WordPress

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

Для установки потребуется выполнить нехитрый порядок действий:

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


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

Параметры и настройка W3 Total Cache

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

Общие настройки

Для того, чтобы перейти на страницу с общими настройками, нажмите на меню «Кеширование» в административной панели Wordpress. На ней представлены общие настройки плагина. Убедитесь, что находитесь в общих настройках, а не на странице консоли плагина W3 Total Cache.


Что такое кэширование страницы?

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


На картинке изображено следующее: обычно когда пользователь заходит на сайт, Wordpress запускает PHP-­скрипты и запросы к базе данных для вывода запрошенной страницы. Тогда PHP обрабатывает данные и создает страницу. Этот процесс вывода страницы потребляет определенные ресурсы сервера. Включение возможности кэширования страницы позволяет пропустить процесс генерации страницы.

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


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

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

Следующий пункт настроек - браузерный кэш.

Что такое браузерный кэш?

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

Параметр браузерного кэширования в W3 Total Cache позволяет указать время хранения закэшированных элементов. При учете, что вы не меняете логотип каждый день, кэширование на 24 часа не причинит никаких неудобств. Просто выделите этот параметр и сохраните. После этого перейдите в «Кэширование» => «Браузерное кэш» для установки прочих настроек.


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

В этой простой настройке Wordpress, остальные параметры включены по умолчанию. Все, что было рассмотрено выше, будет хорошо работать на большинстве серверах, предоставляющих веб­-хостинг. Но у W3 Total Cache есть еще и другие параметры. Постараемся рассмотреть, что они из себя представляют и почему их не включают на всех сайтах.

Минификация

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

Кеширование запросов к БД

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

Кеширование объектов

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

Итак, когда все настроено, будет хорошо сделать резервную копию настроек W3 Total Cache. Для этого следует перейти на страницу общих настроек плагина W3 Total Cache в раздел «Настройки импорта / экспорта» и нажать «Скачать файл параметров».

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

Часто пользователи жалуются на то, что их сайты медленно загружаются. И любой из них хочет узнать секрет быстрой загрузки сайта на 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:

Давайте приступим к настройке 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 и видим результаты вроде тех, что на скриншоте ниже:

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

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

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

General Settings

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

Что такое Page Cache?

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

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

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

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

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

Что такое Browser Cache?

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

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

Как вы можете видеть на изображении выше, мы включили почти всё, за исключением 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 .

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Просто добавьте все файлы/папки, которые вы хотите включить в 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 на многих наших проектах, чего и вам советуем.

Rating: 5.0/5 (3 votes cast)

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

Следующая функция Cache Preload — это то, что мне особенно нравится в W3 Total Cache. Данная функция основываясь на данных файла sitemap.xml создает кэш заданного количества страниц через каждый заданный промежуток времени. Благодаря этому, ваш сайт полностью окажется в кэше через какое-то время(зависит от размера вашего сайта). В отличии от WP Super Cache, который так же предлагает такую функцию, она здесь действительно работает. Так как Super Cache при нескольких попытках заставить его закэшировать весь сайт(было испробовано на двух различных сайтах), только делал вид, что занят работой. На деле же кэш вообще не пополнялся.

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

Последний пункт называется Advanced и особо интересен он тем, что в нем можно настроить время жизни кэша, которое по умолчанию, если не ошибаюсь, установлено на уровне 5-10 минут, не помню уже. А еще он интересен тем, что первый же пункт, который судя по всему включает все это дело, не активен. Но все же потыкайтесь в пункт под названием Garbage collection interval и проверьте что будет, если из другого браузера(в режиме инкогнито будет еще лучше) зайти на закэшированную минут 10-15 назад страницу, после чего поглядеть комментарий в конце кода страницы с указанием время создания кэша. Если время обновилось и стало равным времени вашего посещения, то увы, плагин либо косячный, либо хочет деньги за свои услуги.

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

Проблемы с W3 Total Cache

Начнем наверное с того, что я опишу конфигурацию сервера, на котором стоит сайт под управлением W3 Total Cache и к которому был присобачен данный плагин. Это VPS под управлением ОС CentOS 6,5, где бэкэндом установлен тягучий Apache, а на фронтэнде уютно разместился быстрый и юркий Nginx. Кроме этого установлен eAccelerator, для кэширования запросов в БД, что в купе с не с самыми кривыми руками позволяет иметь необходимость только в первой и самой важной функции плагина W3 Total Cache. Отсюда хотелось бы сразу отрезать комментарии и высказывания по поводу того, что, возможно, W3 Total Cache работает в чем то хуже других аналогичных плагинов, так данный плагин(именно W3 Total Cache) может похвастаться полной совместимостью с Nginx, в то время как все остальные плагины добавят свои коды в файл.htaccess и с явным недоумением будут ждать, пока администратор перепишет эти реврайты на понятном для Nginx языке. Последнее, надо сказать, мне не удалось. Точнее мне не удалось найти рабочие реврайты, которые заставили бы дружить Super Cache и Nginx. Возможно он и к лучшему, так как сейчас я бы с радостью сменил Super Cache на данном блоге на W3 Total Cache. Но, в семье не без уродов, да и W3TC не такой уж и безобидный. Этим абзацем я заканчиваю монолог о том, что необходимо делать с сервером Nginx для кэширования страниц сайта.(Всегда рад услышать другие методы кэширования).

Итак, проблем в процессе знакомства W3 Total Cache с Nginx`ом, да и тем более с Apache ни у кого не должно возникнуть, а потому перейдем к решению проблемы с невозможностью сменить время жизни кэша, а так же с тем, что W3 Total Cache полностью отказывается слушать все внесенные настройки, такие как запрет на кэширование страниц с запросами(страницы поиска) и запрет на кэширование для пользователей. Если с последними двумя я так и не разобрался, хоть и добрался до ручной правки файла конфигурации(кстати, находится по адресу wp-content/w3tc-config/master.php), то с первым удалось совладать. Хотел бы сказать, что изменение внесенные в админке этого плагина, как правило, сохраняются в этом файле, но лучше перепроверить, благо каждая переменная имеет говорящее название. Из всех переменных меня заинтересовала переменная pgcache.late_init(скорее всего от Late initialization — тот самый пункт, который не активен), которой я сразу же выставил значение true, а так же параметр pgcache.cache.nginx_handle_xml, после выставления которому значения true, плагин наконец-то начал слушать то число, которое введено в поле про максимальное время жизни кэша. Проверка показала, что после данных изменений, на озвученном выше сервере, время жизни кэша действительно стала совпадать с указанным пользователем значением.

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

Вспомнив про мобильную версию сайта хотелось бы сказать, что плагин умеет кэшировать и данную версию, причем отдельно, что не может не радовать. Для этого необходимо перейти во вкладку User Agent Groups и поставить две галочки напротив пунктов Enable. В каждом из пунктов вы можете добавить свою юзер-агенты для каких-то новых устройств. Кэш мобильной версии сохраняется в той же папке страницы, что и кэш основной версии. Отличие только в добавлении постификсов high и low(так называют группы по умолчанию). Вы, кстати, можете добавить и свои группы. Единственный минус с мобильной версией состоит в том, что плагин не умеет самолично создавать кэш мобильной версии сайта, что означает что это будут делать только ваши пользователи(или Вы).

Следующей проблемой с W3 Total Cache стала то, что на данном сайте сразу после активации данного плагина и активации функции кэширования, весь сайт погряз в кракозябрах, что говорит о проблемах W3 Total Cache с кодировкой. На сайте используется кодировка UTF-8 и даже в настройках плагина мелькает эти символы. Однако как активация пункта Disable UTF-8 blog charset support, так и его деактивация, не принесла никаких плодов. Далее в недрах Интернета была найдена подсказка, что нужно добавить строку AddDefaultCharset UTF-8 в начало файла.htaccess, но и данный способ на смог помощь. А так как дальнейшие поиски не привели ни к чему стоящему и был установлен WP Super Cache(который по первому взгляду, не лишен некоторых вышеописанных проблем, но об этом возможно позже).

Кодировка W3 Total Cache, дружба W3 Total Cache с Nginx, мобильная версия сайта… Ну, вроде ничего не упустил из того, чего понабрался во время знакомства с этим инструментом, который, надо сказать, со своим делом справляется весьма неплохо. Если страницы вышеозвученного сайта, судя по статистике от Pingdom.com, грузились от 1-2 секунд, то сейчас этот показатель для закэшированной страницы составляет 0,5-0,7 секунд. Если же обратиться к Page Speed от уважаемого Google, то можно напороться только на предупреждения о том, что ресурсы, скрипты и прочий хлам которых загружаясь вместе с данной страницей, являются единственным отрицательным моментом в безупречной технической оптимизации сайта. И интересно то, что гугл ругается на скрипт JQuery, который загружается из репозитория … да, именно, с репозитория гугла. Им бы самим заняться этим вопросом.

Не хило в общем я настрочил про процесс установки и настройки плагина W3 Total Cache и дальнейшие разборки с данным плагином , чтобы заставить его работать по-человечески. Буду рад любому адекватному комментарию, совету, просьбе и так далее.