fastcgi_store
Директива fastcgi_store позволяет сохранять ответы FastCGI в указанное расположение на диске. — NGINX HTTP Core
Описание
`fastcgi_store` используется для определения поведения NGINX в отношении сохранения ответа, полученного от FastCGI-сервера. Когда эта директива установлена, она инструктирует NGINX сохранять тело ответа FastCGI-приложения в файл на диске, что позволяет повысить эффективность обслуживания повторных запросов к одному и тому же ресурсу FastCGI. При указании первый аргумент должен быть допустимым путем к файлу или URI, где должен храниться ответ. Это поддерживает различные возможности файловой системы; например, это может быть динамически создаваемый путь файла на основе переменных запроса или статический путь. Режим хранения также может включать установку прав доступа к файлам в зависимости от конфигурации — что очень полезно при настройке прав для выдачи статических файлов из ответов FastCGI. Кроме того, директива влияет на кэширование, поскольку она позволяет более устойчивый механизм кэширования по сравнению со стандартным кэшированием в памяти, так как сохраняет ответы в виде файлов. Однако при конфигурации пути хранения, прав доступа и стратегий очистки этих файлов требуется тщательное планирование для грамотного управления дисковым пространством в процессе работы.
Пример конфига
location /example {
fastcgi_pass backend;
fastcgi_index index.php;
fastcgi_store on;
fastcgi_store_access user:rw group:rw all:r;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}Убедитесь, что путь, указанный для хранения, доступен для записи процессом NGINX; в противном случае ответы не будут сохраняться корректно.
Будьте внимательны к пространству на диске; по мере накопления файлов могут потребоваться стратегии мониторинга и очистки, чтобы предотвратить переполнение диска.
Использование динамических путей для хранения без правильного форматирования переменных может привести к непредвиденному поведению.