Плагин WP Super Cache генерирует статические Html файлы с динамически созданных файлов блога на WordPress. После создания статические файлы будут отправляться вашим сервером пользователю и загружаться значительно быстрее чем при помощи PHP скриптов WordPress.

Статические HTML файлы будут обслуживать подавляющее большинство пользователей вашего сайта, однако некоторые пользователи оставившие новые комментарии в форме будут получать старый кэш, потому что этими данными управляет двигатель WordPress и комментарий будет доступен из кэша позднее. На кого же распространяются статические файлы?

  1. Не авторизированные пользователи.
  2. Пользователи не оставившие комментарии на вашем блоге.
  3. Пользователи не просмотревшие посты защищенные паролем.

Плагин кэширует файлы тремя способами (по скорости):

  1. Самый быстрый способ, заключается в использовании Apache mod_rewrite (или любого другого модуля вашего веб-сервера) для создания HTML файлов. Этот способ полностью обходит PHP и очень быстрый. Если ваш сервер попадет под большое количество одновременного трафика, то это лучший метод для того чтобы справиться с такой задачей. Этот способ требует установленного модуля Apache mod_rewrite и модифицированного файла .htaccess. Визиты анонимных или неизвестных пользователей будут обслуживаться этими файлами.
  2. PHP. Статические файлы сгенерированные плагином будут поданы пользователям через PHP скрипты. Этот способ почти такой же быстрый как предыдущий, он проще в настройке и не требует модификации файла .htaccess.
  3. Наследие кэширования. Этот способ в основном используется для постоянных посетителей вашего сайта, которые авторизированны, оставляют комментарии. Это самый медленный способ но он подходит для отдельных посетителей, которым важна изменяющаяся информация. Наследие отправляет кэшированные файлы новым посетителям, чего в принципе мы и добиваемся.

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

Рекомендуемые настройки WP Super Cache.

Продвинутые пользователи, скорее всего, захотят использовать mod_rewrite кэширование, но с помощью PHP кэширование почти так же хорошо. PHP кэширование включает в себя следующее:

  1. PHP кэширование.
  2. Сжатие страниц.
  3. Отсутствие кэша страниц для «старых» посетителей.
  4. Восстановление кэша.
  5. Поддержка CDN.
  6. Добавочные проверки начальной страницы.

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

Подробнее о настройках плагина мы поговорим далее в статье.

Установка и подготовка к использованию плагина WP Super Cache.

  1. На вашем сервере должны быть установлены Apache mod mime и mod rewrite модули, а так же в настройках WordPress должен быть установлен параметр постоянных ссылок в одном режиме и не меняться после создания кэша. Безопасный режим PHP должен быть отключен.
  2. Если у вас установлен плагин WP-Cache, пожалуйста, отключите его и правильно удалите. Убедитесь в том что из файла wp-config.php удалены WP_CACHE и WPCACHEHOME. Также нужно проверить удален ли файл WP-Cache-config.php находящийся в директории wp-content/wp-cache-config.php и  wp-content/advanced-cache.php. Они будут вновь созданы при установке нового плагина WP Super Cache.
  3. Загрузите плагин в директорию с плагинами WordPress (‘wp-content/plugins/wp-super-cache/’), что в последствии создаст новую папку плагина или же установите плагин в обычном режиме из админки. После установки плагина его нужно активировать.
  4. После активации плагина переходим с админки в пункт меню Настройки/WP Super Cache и включаем кэширование. При возникновении ошибок или пустого экрана, нужно будет провести некоторые проверки, которые описаны в разделе “Вопросы и ответы” в данной статье.
  5. Если вы выбираете способ кэширования mod_rewrite, в файл .htaccess должно быть добавлено правило, которое выглядит примерно таким образом:
    -----------------.htaccess----------------- RewriteEngine On RewriteBase /  RewriteCond %{REQUEST_METHOD} !=POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$ RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{HTTP_USER_AGENT} !^.*(2.0\ MMP|240x320|400X240|AvantGo|BlackBerry|Blazer|Cellphone|Danger|DoCoMo|Elaine/3.0|EudoraWeb|Googlebot-Mobile|hiptop|IEMobile|KYOCERA/WX310K|LG/U990|MIDP-2.|MMEF20|MOT-V|NetFront|Newt|Nintendo\ Wii|Nitro|Nokia|Opera\ Mini|Palm|PlayStation\ Portable|portalmmm|Proxinet|ProxiNet|SHARP-TQ-GX10|SHG-i900|Small|SonyEricsson|Symbian\ OS|SymbianOS|TS21i-10|UP.Browser|UP.Link|webOS|Windows\ CE|WinWAP|YahooSeeker/M1A1-R2D2|iPhone|iPod|Android|BlackBerry9530|LG-TU915\ Obigo|LGE\ VX|webOS|Nokia5800).* RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L]  RewriteCond %{REQUEST_METHOD} !=POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{QUERY_STRING} !.*attachment_id=.* RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$ RewriteCond %{HTTP_USER_AGENT} !^.*(2.0\ MMP|240x320|400X240|AvantGo|BlackBerry|Blazer|Cellphone|Danger|DoCoMo|Elaine/3.0|EudoraWeb|Googlebot-Mobile|hiptop|IEMobile|KYOCERA/WX310K|LG/U990|MIDP-2.|MMEF20|MOT-V|NetFront|Newt|Nintendo\ Wii|Nitro|Nokia|Opera\ Mini|Palm|PlayStation\ Portable|portalmmm|Proxinet|ProxiNet|SHARP-TQ-GX10|SHG-i900|Small|SonyEricsson|Symbian\ OS|SymbianOS|TS21i-10|UP.Browser|UP.Link|webOS|Windows\ CE|WinWAP|YahooSeeker/M1A1-R2D2|iPhone|iPod|Android|BlackBerry9530|LG-TU915\ Obigo|LGE\ VX|webOS|Nokia5800).* RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L]  RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]  -----------------.htaccess-----------------
  6. После активации плагина проверьте наличие файла “wp-content/cache/.htaccess”, если он не был создан автоматически, создайте его со следующим наполнением:
    # BEGIN supercache  <FilesMatch "\.html\.gz$"> ForceType text/html FileETag None  AddEncoding gzip .gz AddType text/html .gz   SetEnvIfNoCase Request_URI \.gz$ no-gzip   Header set Cache-Control 'max-age=3, must-revalidate'   ExpiresActive On ExpiresByType text/html A3  `` # END supercache
  7. Apache должен быть настроен для модулей используемых в примере. Если вы получите “Ошибку 500” при обслуживании анонимных пользователей, вам нужно будет разбираться в конфигурации сервера. Пример конфигурации для правильной работы плагина:
    <Directory / дома / WWW /> AllowOverride Все  Directory>
  8. wp-content/advanced-cache.php загружает кэширование движка. Этот файл создается автоматически при установке плагина. Он использует постоянный WPCACHEHOME для кэширования.

Подробная настройка плагина WP Super Cache

После установки плагина первое что вам нужно сделать это включить кэширование вашего сайта. Для этого переходим с админки в пункт меню Настройки/Wp Super Cache и в появившемся меню произвести главную настройку плагина — включение кэширования.

Wp super cache настройки плагина

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

Первым делом удалим старые файлы кэша, которые хранятся в папке wp-content/cache на сервере. Делается это также через плагин:

Wp super cache настройки плагина

После удаления ненужных файлов, проверим правильность работы плагина WP Super Cache, если все работает корректно мы сможем продолжить тонкие настройки дополнения. Итак, произведем проверку, нажав на соответствующую кнопку:

Проверка кэширования страниц

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

Первым делом выберем способ которым будут создаваться наши кэшированые страницы. Описание способов представлено выше в статье. Для примера выберем самый быстрый и эффективный способ. Выставите все настройки как показано ниже:

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

Требуемые функции плагина WP Super Cache

После того как вы отметите нужные пункты настройки опускаемся немного ниже и нажимаем на кнопку “Обновить”.

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

WP Super Cache включение mod_rewrite

При успешном добавлении новых правил вы увидите зеленое оповещение об этом:

Проверка подключения mod_rewrite

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

Wp super cache настройки плагина

Как настраивать время жизни файлов кэша? Все дело в том что для каждого сайта данная настройка будет индивидуальной. Если вы выставите время жизни “Cache Timeout” значением “0”, то кэш не будет иметь срока годности, и будет действовать пока вы его вручную не удалите. Такая настройка полезна для сайтов на которых страницы не обновляются вообще, если же вы вносите изменения, имеете на сайте возможность комментирования тогда, нужно будет подобрать подходящее время жизни кэшированых страниц.

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

Создание кэша плагинов WP Super Cache

Если все прошло без проблем, тогда можно вас поздравить ваши страницы будут грузиться намного быстрее благодаря кэшу, созданном при помощи плагина WP Super Cache.

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

Как удалить WP Super Cache?

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

  1. Отключить кэширование в настройках плагина, и очистить кэш.
  2. Деактивировать плагин из административной панели WordPress.
  3. Удалить строчку из файла конфигурации wp-config.php — define( ‘WP_CACHE’, true ).
  4. Удалить правила mod_rewrite из файла .htacces (начало и конец которого отмечено SuperCache BEGIN и END тегами).
  5. Удалить файлы по адресу wp-content/advanced-cache.php и wp-content/wp-cache-config.php.
  6. Очистить папку wp-content/cache.
  7. Удалите папку wp-super-cache из директории плагинов WordPress.

Что делать если при автоматическом удалении плагина сайт перестал работать или работает не корректно?

При возникновении проблем после деактивации и удаления плагина WP Super Cache требуется ручное вмешательство, проделайте операции описанные в пунктах 3-7 представленных в инструкциях выше.

WP Super cache и настройка CDN.

Сеть доставки контента предназначена для ускорения загрузки требуемых данных вашему сайту. Статические данные, JS, CSS  можно подгружать к вашему сайту из сторонних источников или же с поддоменов. Эта функция была подключена к базовой поддержке WP Super Cache. Данная функция работает путем переписывания URL адресов требуемых файлов (за исключением файлов .php) находящихся в директориях wp-content и wp-includes находящихся на сервере. Данная функция позволит скачать требуемые файлы, до истечения их срока действия они будут автоматически подключаться к статической странице вывода пользователю.

Данная возможность предоставлена для продвинутых пользователей с базовым пониманием принципов работы с CDN, настроить которую можно во вкладке  “Настройка CDN” плагина.

Ответы на часто задаваемые вопросы по WP Super Cache.

Почему WP-Super-Cache лучше чем WP-Cache?

Плагин WP Super Cache основан на базе популярного WP Cache, он создает статические копии страниц, которые по скорости загрузки не сильно уступает загружаемым файлам HTML с локального компьютера, это позволило в разы увеличить скорость загрузки сайтов на WordPress.

Будут ли комментарии и другие динамические страницы моментально обновляться в кэше?

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

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

Будет ли плагин WP Super Cache замедлять загрузку сайта?

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

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

Кэш исчезает после обновления плагина WP Super Cache?

Когда плагины WordPress обновляются, папки с плагинами удаляются и воссоздаются заново, по этому данные кэша будут утеряны после обновления. Это можно обойти расположив переменную $wp_cache_plugins_dir, находящуюся в wp-config.php или wp-content/wp-cache-config.php, вне папки wp-super-cache.

Надеюсь данная статья была полезна, она будет дополняться по мере возникновения вопросов по плагину.