$time_iso8601
Переменная $time_iso8601 возвращает текущее время в формате ISO 8601. — NGINX Core (HTTP)
Описание
Переменная $time_iso8601 выводит дату и время в формате, соответствующем стандарту ISO 8601. Эта метка времени обычно имеет формат 'YYYY-MM-DDTHH:MM:SS+ZONE', например '2023-10-04T12:34:56+00:00'. Переменная заполняется NGINX во время обработки запроса и доступна в разных контекстах внутри файла конфигурации. Она использует настройки локального часового пояса сервера, чтобы отображаемое время соответствовало текущим настройкам времени сервера. Она особенно полезна для целей логирования или в контексте HTTP-заголовков, где однозначное представление даты и времени может помочь клиентам в интерпретации, отладке и анализе данных. Как правило, NGINX устанавливает эту переменную при обработке каждого запроса, что гарантирует её актуальность при обращении в течение жизненного цикла запроса. В составе выходного значения метки времени переменная включает информацию о часовом поясе, что делает её пригодной для сценариев, где имеет значение различие часовых поясов. Благодаря своему стандартному формату $time_iso8601 предпочитают в ответах RESTful API и веб-службах, которым требуются точные метки времени, поскольку это позволяет клиентам корректно интерпретировать полученные данные в разных часовых поясах. Переменную можно форматировать так же, как традиционные форматы команды date в NGINX, сохраняя её удобство использования в различных средах установки.
Пример конфига
http {
log_format combined '$remote_addr - $remote_user [$time_iso8601] "$request" '
'$status $body_bytes_sent "$http_referer" "$http_user_agent"';
access_log /var/log/nginx/access.log combined;
}Подсистема
httpКэшируется
НетКонтексты
http, server, location, ifУбедитесь, что часовой пояс сервера настроен правильно, так как это влияет на вывод $time_iso8601.
$time_iso8601 не изменяется после присвоения в конкретном запросе; он остаётся одинаковым на протяжении всего процесса обработки запроса.