Surge

Surge - это плагин страничного кэширования наподобие WP Super Cache - генерирует и обслуживает статические HTML-файлы для вашего сайта WordPress, что приводит к ускорению запросов, ускорению времени загрузки и сокращению времени до первого байта (TTFB).

Surge не требует настройки и не имеет опций. Он работает "из коробки" на любой хорошо настроенной хостинг-платформе. Кэшированные файлы хранятся на диске и автоматически аннулируются при обновлении сайта.

В различных нагрузочных тестах Surge показал, что он легко справляется с 1000-2500 запросами в секунду при 100 одновременных запросах на небольшом одноядерном сервере с 1 ГБ оперативной памяти. Это более чем в 70 раз быстрее, чем стандартная установка WordPress.

FAQ

Сколько храниться кэш?

По умолчанию 10 минут 600 секунд. Свои настройки можно указать через константу WP_CACHE_CONFIG в wp-config.php. В этой константе нужно указать путь к файлу, который должен вернуть массив настроек:

# Surge cache config
const WP_CACHE_CONFIG = '/path/to/surge-config.php';

Пример файла surge-config.php:

return [
	'ttl' => 3600 * 24, // 1 day
];

Все возможные опции:

return [
	// время жизни
	'ttl' => 600,

	// куки (запрос с этими куками будет кэшироваться)
	'ignore_cookies' => [ 'wordpress_test_cookie' ],

	// параметры запроса, которые не влияют на кэширование (запрос с этими куками будет кэшироваться)
	// https://github.com/mpchadwick/tracking-query-params-registry/blob/master/_data/params.csv
	'ignore_query_vars' => [
		'fbclid', 'gclid', 'gclsrc', 'utm_content', 'utm_term', 'utm_campaign',
		'utm_medium', 'utm_source', 'utm_id', '_ga', 'mc_cid', 'mc_eid',
		'_bta_tid', '_bta_c', 'trk_contact', 'trk_msg', 'trk_module', 'trk_sid',
		'gdfms', 'gdftrk', 'gdffi', '_ke', 'redirect_log_mongo_id',
		'redirect_mongo_id', 'sb_referer_host', 'mkwid', 'pcrid', 'ef_id',
		's_kwcid', 'msclkid', 'dm_i', 'epik', 'pk_campaign', 'pk_kwd',
		'pk_keyword', 'piwik_campaign', 'piwik_kwd', 'piwik_keyword', 'mtm_campaign',
		'mtm_keyword', 'mtm_source', 'mtm_medium', 'mtm_content', 'mtm_cid',
		'mtm_group', 'mtm_placement', 'matomo_campaign', 'matomo_keyword',
		'matomo_source', 'matomo_medium', 'matomo_content', 'matomo_cid',
		'matomo_group', 'matomo_placement', 'hsa_cam', 'hsa_grp', 'hsa_mt',
		'hsa_src', 'hsa_ad', 'hsa_acc', 'hsa_net', 'hsa_kw', 'hsa_tgt',
		'hsa_ver', '_branch_match_id',
	],

	// Add items to this array to add a unique cache variant.
	'variants' => [],
];

Где находится страница настроек (конфигурации) плагина?

Её нет.

Как очистить кэш?

Ре-активируйте плагин. Или запустите WP-CLI команду wp surge flush.

Работает ли кэш?

Зайдите на экран "Здоровье сайта" в разделе "Инструменты" на панели инструментов WordPress. Там будут показаны общие ошибки кэширования, такие как проблемы с установкой и т.д.

Или откройте свой сайт в Инкогнито, чтобы увидеть кэшированную версию и найдите заголовок "X-Cache" в ответе сервера - hit - значит кэш работает!

Почему я получаю пропуски кэша?

Ниже приведены несколько распространенных причин:

  • Вы авторизованы на сайте WordPress.
  • В вашем браузере установлен уникальный cookie.
  • Уникальный параметр запроса также приведет к пропуску кэша, за исключением обычных маркетинговых параметров, таких как utm_campaign и т.д.
  • Кэшируются только методы запроса: GET и HEAD.

Могу ли я исключить страницу X из кэша?

Конечно. Если вы передадите заголовок Cache-Control: no-cache или Cache-Control: max-age=0, запрос будет автоматически исключен из кэша. Обратите внимание, что большинство плагинов WordPress уже делают это при необходимости.

Ошибка: fpassthru() отключен по соображениям безопасности

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

Как я могу поддержать Surge?

Если вам нравится Surge, поставьте нам звезду на GitHub и оставьте отзыв на WordPress.org.