fastcgi_cache_purge
Директива fastcgi_cache_purge позволяет удалять кэшированное содержимое в кэшах FastCGI.
Описание
Директива fastcgi_cache_purge, являющаяся частью NGINX Cache Purge module, позволяет администраторам удалять конкретные записи из кэшей FastCGI на основе ключей кэша. Это особенно полезно для динамического содержимого, которое может часто меняться и требует обновления в кэше без полного сброса всего кэша. Директиву можно настроить для работы в различных контекстах, включая http, server и location, что обеспечивает гибкое применение в разных областях вашей конфигурации NGINX.
Синтаксис директивы позволяет указать метод (GET или POST), возможность очистки всех записей кэша и ограничивать операции очистки по конкретным IP-адресам или диапазонам. Механизм кэширования допускает использование wildcards в ключах, что позволяет удалить несколько связанных записей кэша одним запросом. Например, отправка запроса на очистку для /page* затронет все кэшированные записи, связанные со страницами, начинающимися с /page. Эффективное использование этой директивы требует тщательного продумывания контроля доступа, поскольку непреднамеренное разрешение операций очистки может привести к нежелательной инвалидизации кэша.
Кроме того, директива может возвращать различные типы ответов (HTML, JSON, XML или plain text), указывая на успех или неудачу операции очистки, что настраивается с помощью директивы cache_purge_response_type. Это помогает лучше различать результаты операций с точки зрения API или пользовательского интерфейса.
Пример конфига
http {
fastcgi_cache_purge on;
location /purgeme {
fastcgi_cache_purge fastcgi_cache_zone $request_uri;
}
}Убедитесь, что IP address или диапазон, указанные в 'from', точны; при ошибочной настройке это может позволить выполнять purges неавторизованным пользователям.
Использование wildcard в cache key может привести к непреднамеренной cache invalidation, если настройка выполнена неосторожно.
Purging требует срочного внимания к правам пользователей; неавторизованные пользователи не должны иметь возможности выполнять purge cache.