post_action
Директива `post_action` задаёт обработчик, который выполняется после отправки ответа клиенту. — NGINX HTTP Core
Описание
Директива `post_action` в NGINX позволяет указать дополнительное действие, которое должно выполняться после обработки запроса. Эту директиву можно определить на разных уровнях конфигурации NGINX, таких как http, server, location, или внутри 'if' выражений в пределах location block, что обеспечивает гибкость в соответствии с различными потребностями при обработке HTTP-запросов. Основная цель этой директивы — позволить выполнять последующие задачи обработки, которые не влияют на немедленный ответ клиенту, такие как логирование, уведомления или дополнительная фоновая обработка.\n\nКогда вы используете директиву `post_action`, указанный URI будет запрошен после выполнения основного запроса, потенциально отправляя фоновый запрос к другой конечной точке. Однако важно убедиться, что эта конечная точка обрабатывается должным образом, поскольку NGINX не ждёт завершения `post_action`; он лишь запускает её после обработки основного ответа. Это позволяет выполнять операции, которые не критичны для опыта пользователя, но могут быть важны для аудита или обслуживания системы.\n\nДиректива принимает один аргумент — URI, который будет запрошен post-action. Учтите, что URI может включать параметры запроса и должен напрямую относиться к действительному location block, определённому в конфигурации NGINX.
Пример конфига
location /example {
post_action /post-handler;
}Убедитесь, что URI, указанный в `post_action`, существует и доступен для NGINX, иначе это может привести к непредвиденному поведению.
`post_action` не ожидает завершения обработки на бэкенде; любые необходимые операции очистки должны выполняться внутри самого `post_action`.