Отметки времени в моем журнале ошибок PHP отображаются в формате UTC. Я хочу, чтобы они отображались в моем часовом поясе.
date.timezone
в моем файле php.ini установлен правильный часовой пояс.phpinfo()
отображает правильный часовой пояс.phpinfo()
заявляет, что загружен правильный файл php.ini.Все веб-сайты, которые я нашел с помощью Google, просто говорят, что нужно проверить эти три вещи.
Я использую Windows Server 2019 и IIS.
Вот пример того, как сейчас выглядит одна из строк в файле журнала:
[28-Dec-2018 14:22:39 UTC] PHP Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in C:\path\media.php on line 694
Обновить: Если я запускаю сценарий PHP из командной строки, и этот сценарий генерирует ошибку, запись журнала ДЕЙСТВИТЕЛЬНО имеет метку времени в моем местном часовом поясе.
Согласно моему комментарию, похоже, что ваш веб-сервер использует формат файла журнала по умолчанию (W3C Extended), который по умолчанию использует GMT. В Страница поддержки MS Я связал содержит два решения для этого.
Временное решение - запустить следующую команду в файлах журнала:
c:\windows\system32\convlog -ie LogFileName -t ncsa:+/-GMTOffset
где LogFileName - это имя файла для преобразования, а GMTOffset - количество часов, которое необходимо исправить. (например, -0500 для EST). ПРИМЕЧАНИЕ. Это решение фактически не изменяет метки времени для записей журнала. Он вводит смещение по Гринвичу в каждую запись, чтобы любой, читающий журнал, мог видеть, что метка времени не соответствует местному времени.
Ниже приведен пример записи журнала, созданной этой утилитой:
192.168.1.1 - - [30/Jun/2000:20:16:40 -0500] "GET /default.asp HTTP/1.0" 200
Лучшее решение, казалось бы, - изменить формат файла журнала на формат файла журнала IIS. Я нашел следующее руководство, в котором шаг 4 рассказывает вам, как это сделать:
https://docs.microsoft.com/en-us/iis/manage/provisioning-and-managing-iis/configure-logging-in-iis
Это применимо к Windows Server 2012 и Windows 8, но может быть аналогичным для вашей версии. Обратите внимание, что изменение может применяться на разных уровнях: сайт, на сайт (сервер), на сервер (сервер).