rewrite_log
Директива rewrite_log включает логирование деталей обработки правил перезаписи для запросов. — NGINX HTTP Core
Описание
Директива rewrite_log является частью NGINX HTTP Core module и используется для логирования подробной информации о процессе обработки перезаписи запросов. Когда она включена, это помогает разработчикам и системным администраторам отлаживать сложные правила перезаписи, предоставляя сведения о работе механизма перезаписи. Это особенно полезно для выявления проблем в правилах перезаписи, таких как неверные перенаправления или непредвиденное поведение при обработке URL. Директива принимает параметр-флаг: значение 'on' включает логирование, значение 'off' — отключает. Сгенерированные логи содержат записи для каждого цикла перезаписи, а также условия и выполняемые замены. Эта функция обычно используется на этапах разработки и тестирования конфигурации, поскольку повышенная подробность логов может привести к ухудшению производительности в рабочей среде, если оставить её включённой. При размещении в соответствующем контексте (http, server, location или if statements внутри этих контекстов) она управляет выводом логов именно для этих блоков. Однако важно использовать её осмотрительно: логирование каждого процесса перезаписи может быстро заполнить файлы логов и потенциально привести к дополнительной нагрузке на ввод/вывод.
Пример конфига
server {
listen 80;
server_name example.com;
rewrite_log on;
location /old-page {
rewrite ^/old-page/(.*) /new-page/$1 last;
}
}Включение rewrite_log увеличивает подробность записей в файлах журналов, что может повлиять на производительность и привести к значительному росту объёма логов в производственных средах.
Убедитесь, что настроена ротация логов, если rewrite_log включён, чтобы предотвратить чрезмерное использование дискового пространства.