Есть ПО Userside, установленное на сервер ubuntu 16.04.
Появилась ошибка:
ВНИМАНИЕ
Системное время (14.01.2021 12:35:21)
несоответствует времени SQL (14.01.2021 11:35:21)
В вики у них описано, что надо поменять в загруженном php.ini таймзону.
Решение от userside
Если системное время 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" время будет перепроверено и, если всё совпадает, ошибка исчезнет.
Нахожу загруженный php.ini
РазвернутьConfiguration File (php.ini) Path /etc/php/7.0/fpm
Loaded Configuration File /etc/php/7.0/fpm/php.ini
Scan this dir for additional .ini files /etc/php/7.0/fpm/conf.d
Additional .ini files parsed /etc/php/7.0/fpm/conf.d/10-mysqlnd.ini, /etc/php/7.0/fpm/conf.d/10-opcache.ini, /etc/php/7.0/fpm/conf.d/10-pdo.ini, /etc/php/7.0/fpm/conf.d/15-xml.ini, /etc/php/7.0/fpm/conf.d/20-bcmath.ini, /etc/php/7.0/fpm/conf.d/20-calendar.ini, /etc/php/7.0/fpm/conf.d/20-ctype.ini, /etc/php/7.0/fpm/conf.d/20-curl.ini, /etc/php/7.0/fpm/conf.d/20-dom.ini, /etc/php/7.0/fpm/conf.d/20-exif.ini, /etc/php/7.0/fpm/conf.d/20-fileinfo.ini, /etc/php/7.0/fpm/conf.d/20-ftp.ini, /etc/php/7.0/fpm/conf.d/20-gd.ini, /etc/php/7.0/fpm/conf.d/20-gettext.ini, /etc/php/7.0/fpm/conf.d/20-iconv.ini, /etc/php/7.0/fpm/conf.d/20-json.ini, /etc/php/7.0/fpm/conf.d/20-mbstring.ini, /etc/php/7.0/fpm/conf.d/20-mysqli.ini, /etc/php/7.0/fpm/conf.d/20-pdo_mysql.ini, /etc/php/7.0/fpm/conf.d/20-phar.ini, /etc/php/7.0/fpm/conf.d/20-posix.ini, /etc/php/7.0/fpm/conf.d/20-readline.ini, /etc/php/7.0/fpm/conf.d/20-shmop.ini, /etc/php/7.0/fpm/conf.d/20-simplexml.ini, /etc/php/7.0/fpm/conf.d/20-snmp.ini, /etc/php/7.0/fpm/conf.d/20-sockets.ini, /etc/php/7.0/fpm/conf.d/20-sysvmsg.ini, /etc/php/7.0/fpm/conf.d/20-sysvsem.ini, /etc/php/7.0/fpm/conf.d/20-sysvshm.ini, /etc/php/7.0/fpm/conf.d/20-tokenizer.ini, /etc/php/7.0/fpm/conf.d/20-wddx.ini, /etc/php/7.0/fpm/conf.d/20-xmlreader.ini, /etc/php/7.0/fpm/conf.d/20-xmlrpc.ini, /etc/php/7.0/fpm/conf.d/20-xmlwriter.ini, /etc/php/7.0/fpm/conf.d/20-xsl.ini, /etc/php/7.0/fpm/conf.d/20-zip.ini
Иду по пути. Во всей директории на каждом файле ставлю timezone Asia/Vladivostok (он и так почти везде стоял, в некоторых местах просто не было указано ничего).
Перезапускаю php (да и сам сервер уже перезагружал).
Проверяю время на сервере:
root@dns:~# timedatectl
Развернуть Local time: Thu 2021-01-14 11:47:26 +10
Universal time: Thu 2021-01-14 01:47:26 UTC
RTC time: Thu 2021-01-14 01:47:26
Time zone: Asia/Vladivostok (+10, +1000)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
В info.php так же Australia/Melbourne.
Пробую
sudo timedatectl set-timezone Asia/Vladivostok
Через tzselect настраиваю, перебираю любые вообще названия часовых поясов +10.
Пробовал и Etc/GMT-10.
Ничего не изменяется, остается Australia/Melbourne.
Но при этом, как только я пытаюсь поставить любую таймзону не +10. (+9 иркутск, токио, что угодно), то она прекрасно меняется в info.php. И системное время в ошибке отображается уже с отставанием. Любые UTC ставятся, но только не та, которая мне нужна.
ПроститеГоспода, я совсем не разбираюсь в линуксах, так что возможно просто "Ну ты тууупооой". Саппорт самого Userside либо не понимает мою проблему, либо просто не знает как решить.