Страница 1 из 1
Часовые пояса (проблемы из-за них)
Добавлено: 29 ноя 2014, 20:33
Dmitry
Сервер биллинга использует целый ряд программ, которые взаимодействуют между собой. По умолчанию, при установке никаких специальных настроек по поводу того, какой часовой пояс будет использовать та или иная программа, не выполняется. В итоге, все программы используют "системное время". И по идее, никаких проблем возникать не должно.
Но, иногда возникают...
Начнем с того,
как посмотреть, какое "текущее" время у той или иной программы
системное время самого сервера
Чтобы увидеть, какое текущее время у сервера, введите в консоли (терминале) такую команду:
в ответ вы получите сообщение о текущей дате и времени сервера, типа такого:
текущее время, по мнению сервера php
Чтобы узнать, какое время использует сервер PHP, введите в консоли (терминале) вот такую команду:
в итоге вы получите ответ наподобие такого:
текущее время, по мнению perl
Чтобы узнать, какое время использует сервер PERL, введите в консоли (терминале) вот такую команду:
в итоге вы получите ответ наподобие такого:
текущее время, по мнению сервера MySQL
Чтобы узнать, какое время использует сервер MySQL, придется потрудиться немного больше. Сначала войдите в консоль сервера MySQL, для чего введите в консоли (терминале) вот такую команду:
В ответ на запрос сервера введите пароль пользователя root для сервера MySQL (отличается от системного). После того, как вы войдете в консоль сервера MySQL, введите там вот такую команду (обязательно с "точкой-запятой" в конце!!!):
В ответ север MySQL сообщит вам текущее время согласно его отсчета (выглядит это следующим образом)
Код: Выделить всё
+---------------------+
| now() |
+---------------------+
| 2014-11-29 16:19:27 |
+---------------------+
Собственно,
если показания отличаются, нужно исправлять!
Настройка часового пояса самого сервера
В консоли введите команду:
В псевдографическом меню выберите сначала Европу, а потом город (или свой, или тот, про который вам известно, что он в одном часовом поясе с вами)
Настройка часового пояса у сервера php
Найдите и отредактируйте файл настроек сервера:
ВНИМАНИЕ: размещение файла настроек указано для старых версий PHP! Для более свежих версий путь к файлу отличается, поэтому, откорректируйте его с учетом реалий вашей системы! (например, для версии 7.4 путь к файлу настроек такой: /etc/php/7.4/apache2/php.ini)
в файле найдите строку
В этой строке удалите точку с запятой в начале, и после равно впишите корректное значение вашего часового пояса, например, такое:
Список часовых поясов вы можете посмотреть, например, на странице по адресу:
http://php.net/manual/ru/timezones.php
Настройка часового пояса у сервера MySQL
Отредактируйте файл настроек сервера MySQL. Введите команду:
ВНИМАНИЕ: размещение файла настроек указано для старых версий MySQL! Для более свежих версий путь к файлу отличается, поэтому, откорректируйте его с учетом реалий вашей системы! (например, для версии 5.7.х путь к файлу настроек такой: /etc/mysql/mysql.conf.d/mysqld.cnf)
В нем строку с параметром НУЖНО БУДЕТ ДОБАВЛЯТЬ (по умолчанию ее там нет)!
найдите в файле (в начале) раздел, начинающийся маркером [mysqld], и под ним допишите новую строку вида
...вписав в нее (вместо timezone) ваш часовой пояс. список поясов - можете использовать из ссылки для сервера PHP
PS. Где и как изменить системную настройку часового пояса для Perl я, увы, не нашел...