FAQ. Неверное время: различия между версиями
Admin (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
(не показано 9 промежуточных версий 1 участника) | |||
Строка 1: | Строка 1: | ||
[[FAQ._Incorrect_time|en]] | [[FAQ._Неверное_время|ru]] | |||
'''На главной странице UserSide выводится неверное время''' | '''На главной странице UserSide выводится неверное время''' | ||
'''Замечания про MySQL актуальны для ERP "UserSide" версии до 3.12''' | |||
Система берёт время исключительно с сервера, где установлена, ничего от себя не добавляя. Если время отображается некорректно - значит проблема исключительно с настройками на сервере. Проверяйте настройки временной зоны ''(в файле php.ini переменная date.timezone)'', региональные настройки и локали. Также может помочь проверка времени в mysql ''(в mysql может быть выставлено время отличающееся от серверного)''. | Система берёт время исключительно с сервера, где установлена, ничего от себя не добавляя. Если время отображается некорректно - значит проблема исключительно с настройками на сервере. Проверяйте настройки временной зоны ''(в файле php.ini переменная date.timezone)'', региональные настройки и локали. Также может помочь проверка времени в mysql ''(в mysql может быть выставлено время отличающееся от серверного)''. | ||
Строка 7: | Строка 13: | ||
select NOW(); | select NOW(); | ||
покажет текущее время по версии | покажет текущее время по версии MySQL | ||
'''Если | '''Если время MySQL отличается от системного времени''' | ||
Для всего MySQL-сервера часовой пояс можно поменять установив в файле конфигурации нужный часовой пояс. Например: | Для всего MySQL-сервера часовой пояс можно поменять установив в файле конфигурации нужный часовой пояс. Например: | ||
Строка 18: | Строка 24: | ||
Полезная статья: | Полезная статья: | ||
[[http://www.opennet.ru/tips/info/1810.shtml]] | [[http://www.opennet.ru/tips/info/1810.shtml]] | ||
'''Если системное время PHP (cli) отличается от времени базы данных''' | |||
Для PHP возможна ситуация, когда используются различные файлы php.ini в работе. Для php-web ''(через него работает веб-интерфейс ERP "UserSide")'' свой, а для php-cli ''(через него работает, к примеру запуск скриптов через cron, в т.ч. планировщик ERP "UserSide")'' свой. Зачастую используется один файл, но иногда - нет и тогда настройки в них могут очень различаться. В т.ч. может отличаться часовой пояс, что приводит к неправильным обработкам дат и к сообщениям о различиях во времени. | |||
Как посмотреть какой файл php.ini использует php-web: | |||
Настройка - Основная - Разное - Показать PHPinfo() | |||
В строке "Loaded Configuration File" будет путь к файлу. | |||
Как посмотреть какой файл php.ini использует php-cli: | |||
В директории "userside" нужно создать, например файл test.php с текстом внутри: | |||
<?php | |||
phpinfo(); | |||
После чего через консоль сервера зайти в этот каталог и выполнить команду | |||
php test.php > result.htm | |||
Сформируется файл result.htm с выводом информации PHPinfo. В этом файле также смотрим путь "Loaded Configuration File", находим этот файл и корректируем настройки времени. | |||
При следующем запуске планировщика ERP "UserSide" время будет перепроверено и, если всё совпадает, ошибка исчезнет. |
Текущая версия от 15:03, 13 марта 2023
На главной странице UserSide выводится неверное время
Замечания про MySQL актуальны для ERP "UserSide" версии до 3.12
Система берёт время исключительно с сервера, где установлена, ничего от себя не добавляя. Если время отображается некорректно - значит проблема исключительно с настройками на сервере. Проверяйте настройки временной зоны (в файле php.ini переменная date.timezone), региональные настройки и локали. Также может помочь проверка времени в mysql (в mysql может быть выставлено время отличающееся от серверного).
Команда
select NOW();
покажет текущее время по версии MySQL
Если время MySQL отличается от системного времени
Для всего MySQL-сервера часовой пояс можно поменять установив в файле конфигурации нужный часовой пояс. Например:
default-time-zone='+03:00'
Полезная статья: [[1]]
Если системное время PHP (cli) отличается от времени базы данных
Для PHP возможна ситуация, когда используются различные файлы php.ini в работе. Для php-web (через него работает веб-интерфейс ERP "UserSide") свой, а для php-cli (через него работает, к примеру запуск скриптов через cron, в т.ч. планировщик ERP "UserSide") свой. Зачастую используется один файл, но иногда - нет и тогда настройки в них могут очень различаться. В т.ч. может отличаться часовой пояс, что приводит к неправильным обработкам дат и к сообщениям о различиях во времени.
Как посмотреть какой файл php.ini использует php-web:
Настройка - Основная - Разное - Показать PHPinfo()
В строке "Loaded Configuration File" будет путь к файлу.
Как посмотреть какой файл php.ini использует php-cli: В директории "userside" нужно создать, например файл test.php с текстом внутри:
<?php phpinfo();
После чего через консоль сервера зайти в этот каталог и выполнить команду
php test.php > result.htm
Сформируется файл result.htm с выводом информации PHPinfo. В этом файле также смотрим путь "Loaded Configuration File", находим этот файл и корректируем настройки времени.
При следующем запуске планировщика ERP "UserSide" время будет перепроверено и, если всё совпадает, ошибка исчезнет.