fastcgi_no_cache

Директива `fastcgi_no_cache` управляет тем, кэшировать ли ответы от приложений FastCGI на основе указанных условий.

Синтаксисfastcgi_no_cache condition | variable_names;
По умолчаниюnone
Контекстhttp, server, location
Аргументы1+

Описание

Директива fastcgi_no_cache используется, чтобы указать NGINX, следует ли кэшировать ответы от FastCGI-серверов, таких как обработчики PHP. Эта директива принимает одну или несколько переменных или условий, определяющих правила кэширования. Например, если значение указанной переменной истинно, NGINX не кэширует ответ, что позволяет генерировать динамический контент без задержек, вызванных попаданиями в кэш. Она работает совместно с директивой fastcgi_cache_bypass для обеспечения согласованного поведения кэширования на основе похожих условий.

Директива должна быть задана в контексте http, server или location в конфигурационном файле NGINX и обычно используется вместе с настройками кэширования для достижения оптимальной производительности. Она особенно полезна в приложениях, где требуется инвалидировать кэш в определённых обстоятельствах, например, когда пользователь вошёл в систему, или содержимое ответа значительно меняется в зависимости от параметров запроса. Эффективно управляя динамическим контентом, fastcgi_no_cache помогает поддерживать актуальность данных приложения и улучшает пользовательский опыт в веб-приложениях.

Пример конфига

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_no_cache $http_cache_control;
}

Убедитесь, что условия кэширования чётко определены, чтобы избежать ненужной нагрузки на сервер FastCGI.

Использование неправильных имён переменных может привести к непредсказуемому поведению кэша или неверным ответам.

← Ко всем директивам