Как изменить дату на хостинге

Корректировка времени и даты на сервере VPS CentOS (Linux)

Иногда на сервере указано неверное время или дата. Оно может отставать от реального на несколько минут или даже несколько часов. А это влияет на многие функции, которые завязаны на времени.

Для исправления заходим на свой сервер через ssh.

Консольная программа для проверки времени и даты на сервере Linux:

Будет указано что-то вроде:

Wed Oct 24 22:26:19 MSK 2030

Установка текущей даты:

date +%Y%m%d -s «20170801»

Установка текущего времени:

В кавычках устанавливаем верное значение даты и времени.

Затем снова проверяем время, с помощью команды date и убеждаемся, что теперь оно настроено правильно.

Если время снова возвращается к исходному (не точному)

Иногда, после перезагрузки сервера (или через какое-то время) параметры старого времени снова возвращается. Тогда следует поменять данные по-другому.

В CentOS заходим в директорию etc и находим файл localtime. Это символическая ссылка (symbolic link) на файл в котором указана временная зона. Возможно сервер работает с другой временной заной и поэтому возвращается к исходному значению.

Удаляем эту символическую ссылку

Вместо неё устанавливаем ссылку на другую временную зону. В данном случае, Москву:

sudo ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Дата и время в PHP

Бывает, что несмотря на правильные настройки, дата которая выводится в скриптах PHP не соответствует серверному. За дату в PHP отвечает файл php.ini.

И настройках по умолчанию дата и время указана в UTC:

По идее смена строчки на такую:

date.timezone = «Europe/Moscow»

в php скриптах исправит ситуацию. Однако такое происходит тоже не всегда, потому что файл php.ini дублируется в разных местах и из какого именно файла берутся настройки понятно не всегда.

Проверяем какая таймзона указана в настройках сервера.

Показывает UTC:

echo date_default_timezone_get();

Показывает таймзону:

echo ini_get(‘date.timezone’);

Также можно узнать, какое время показывает php без указания таймзоны:

echo date(«d.m.Y H:i:s T», time());.

Для исправления проблем с различием времени (отстаёт от реального или спешит), в начале PHP скрипта устанавливаем нужную временную зону. Для Москвы это:

date_default_timezone_set( ‘Europe/Moscow’ );

Работа многих служб ОС зависит от того, насколько точны системные часы. Для чего нужна эта точность? Затем, что неточное время на сервере повлечет за собой много неприятностей.

В качестве примера приведем следующий: если в локальной сети часы машин, которые совместно используют файлы, не будут синхронизированы, то нельзя будет установить время изменения файлов. Из-за этого возникнет конфликт версий или перезаписи данных. Без установки точного времени на сервере появятся и сложности с задачами Cron – непонятно, когда они запустятся. Невозможно будет проанализировать журналы системных событий, чтобы понять причины неисправностей и сбоев.

Для того чтобы эти неприятности не возникли, нужно наладить синхронизацию системных часов. Для этого используется протокол NTP (Network Time Protocol).

Как устроен протокол NTP 

Протокол NTP основан на иерархической структуре сервера точного времени, где выделены разные уровни. К нулевому уровню, на котором NTP-серверы не работают, относятся так называемые эталонные часы.

С ними синхронизируются NTP серверы уровня 1, являющиеся источниками для серверов уровня 2. Серверы второго уровня синхронизируются с серверами первого уровня, но еще могут синхронизироваться между собой. Точно так же функционируют серверы третьего уровня и ниже. В целом, поддерживается порядка 256 уровней.

Иерархическая структура NTP является отказоустойчивой и избыточной. Так, резервные серверы берут синхронизацию на себя, когда речь идет об отказах соединения с вышестоящими серверами. Для расчета точного времени NTP берет данные ото всех источников, синхронизируясь с несколькими серверами.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Как установить и настроить NTP-сервер

Чтобы синхронизировать время, используют демон ntpd, который может быть как сервером, принимающим время из удаленных хостов, так и клиентом, раздающим время сторонним хостам. Демон ntpd зависит от указанных в файле конфигурации настроек.

Для установки сервера NTP используется стандартный менеджер пакетов $ sudo apt-get install ntp.

После установки все необходимые настройки NTP будут находиться в файле /etc/ntp.conf.

Первая строчка файла конфигурации – driftfile /var/lib/ntp/ntp.drift. В ней указан файл, в котором хранится информация о том, как часто смещается время. В этом же файле содержится и значение, которое было получено из предыдущих изменений времени. Если по каким-то причинам внешние NTP-серверы недоступны, знание берут из этого файла. 

После этого нужно указать файл, сохраняющий логи синхронизации – logfile /var/log/ntp.log.

В файле конфигурации нужно указать перечень серверов NTP, с которыми нужно синхронизироваться. По умолчанию этот перечень выглядит вот так:

  • server 0.ubuntu.pool.ntp.org
  • server 1.ubuntu.pool.ntp.org
  • server 2.ubuntu.pool.ntp.org
  • server 3.ubuntu.pool.ntp.org

Эти строки означают группу серверов, которые сообщают серверу верное время. Через опцию iburst можно увеличить точность синхронизации, то есть указать то, что на сервер необходимо отправлять несколько пакетов вместо одного:

  • server 0.ubuntu.pool.ntp.org iburst
  • server 1.ubuntu.pool.ntp.org iburst
  • server 2.ubuntu.pool.ntp.org iburst
  • server 3.ubuntu.pool.ntp.org iburst

Еще можно донести информацию о нужном сервере через опцию prefer:

server 0.ubuntu.pool.ntp.org iburst prefer

VDS Timeweb арендовать

Ареал использования серверов NTP

Такие серверы есть во всем мире, но обычно синхронизация происходит с NTP-серверами именно того ареала, где физически находится ваш сервер. Таким образом, в файле конфигурации /etc/ntp.conf указывается поддомен ареала (региона) для pool.ntp.org:

  • Азия – asia.pool.ntp.org
  • Европа – europe.pool.ntp org
  • Африка – africa.pool.ntp.org
  • Северная Америка – north-america.pool.ntp.org
  • Южная Америка – south-america.pool.ntp.org
  • Океания – oceania.pool.ntp.org
  • Россия – ru.pool.ntp.org

Резервный сервер точного времени

NTP-сервер, по какой-либо причине отключенный от интернета, может передавать для синхронизации данные своих системных часов. Для этого в конфигурационный файл нужно добавить следующую строку:

server 127.127.1.0

Особые случаи использования NTP

Например, NTP могут использовать, чтобы усилить трафик в DDoS-атаках. А чтобы избежать столкновения с различными злоупотреблениями, следует ограничить доступ для внешних клиентов. Говоря об ограничениях, то по умолчанию в /etc/ntp.conf файле выставлены такие:

  • restrict − 4 default kod notrap nomodify nopeer noquery
  • restrict − 6 default kod notrap nomodify nopeer noquery

Такие опции, как nomodify, notrap, nopeer и noquery, не позволяют внешним клиентам менять конфигурации на сервере. Параметр kod (расшифровывается как kiss of death, «смертельный поцелуй») дает дополнительный уровень защиты: клиент, который часто отправляет запросы, получает сперва kod-пакет, являющийся предупреждением о том, что в обслуживании отказано, а потом отключается от сервера.

Для синхронизации машин из локальной сети с сервером NTP в файл конфигурации добавляется такая строчка:

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

А для локального хоста устанавливается неограниченный доступ к серверу NTP:

restrict 127.127.1.0

Как проверить синхронизацию

После сохранения всех изменений в файле конфигурации NTP-сервер нужно перезагрузить:

$ service restart ntp

А затем выполнить команду:

$ ntpq -p

NTP INFOНа выходе получится таблица, в которой указаны следующие параметры:

  • remote – адрес сервера точного времени;
  • refid – вышестоящий сервер;
  • st – уровень (stratum) сервера;
  • t – тип пира (u- unicast, m- multicast);
  • when – время последней синхронизации;
  • poll – время в секундах, за которое демон NTP синхронизируется с пиром;
  • reach – состояние доступности сервера;
  • delay – время задержки ответа от сервера;
  • offset – временная разница между сервером и сервером синхронизации;
  • jitter – смещение времени на удаленном сервере.

Слева от адреса сервера могут быть указаны еще и такие символы:

  • * – сервер выбран для синхронизации;
  • + – сервер, пригодный для синхронизации;
  • – – с сервером синхронизироваться не стоит;
  • х – сервер недоступен.

Чтобы проверить, насколько сервер подходит для синхронизации, нужно использовать команду ntpdate -q.

Как установить локальные дату и время

Чтобы установить локальные дату и время на сервере, нужно использовать команду ntpdate, при этом отправив необходимый запрос к серверу NTP:

$ ntpdate -u 192.168.1.1

Статус ntpd проверяется при помощи команды:

$ ntpdc -c sysinfo

ntpdc status info

Вступление

Любое системное событие на сайтах WordPress, например, публикация статьи или оставление комментария, отмечается датой и временем его совершения. По умолчанию, система выводит только дату публикации статьи или оставления комментария, оставляя «за скобкой» время публикации.

Пользовательская настройка времени на сайте WordPress не влияет на работоспособность сайта. По умолчанию, система забирает время совершения события с сервера. На сервере вывод системной даты и времени форматирует функция php date.

Вы же настройками даты/времени в общих настройках сайта, можете задать только формат их вывода.

Если вы в общих настройках сайта в поле «Формат времени» выберите тип «Произвольно» и оставите поле пустым, сайт не перестанет работать. Просто показа времени публикации, если он есть в вашем шаблоне, не будет.

Часовой пояс

С настройкой часового пояса, аналогичная ситуация. Если вы работаете, например в Москве, в часовой пояс поставите, как в Сиднее, сайт работать не перестанет. Показ времени в публикациях, если он есть в вашем шаблоне, будет по Сиднею. Но это ещё не всё!

Все отложенные действия на сайте, например, отсроченная (запланированная) публикация, будут происходить по времени Сиднея.

Это очень удобно, если вы работаете удалённо на публику другого региона в другом временном поясе. Если же вы работаете на публику своего региона, лучше выставить свой часовой пояс. Покажу, как это делать правильно (по рекомендованному стандарту) и как делать нестандартно.

Настройка времени WordPress по часовому поясу вашего города

Данная настройка времени WordPress проводится в рамках общих настроек сайта, сразу после установки системы.

Более локально, настройка времени WordPress входит в триумвират,

  • Часовой пояс;
  • Формат даты;
  • Формат времени.

При рекомендованных настройках вы этого не видите, но эти две настройки форматов и настройка часового пояса связаны друг с другом.

настройка времени WordPress

Выбор часового пояса

Итак, настройка часового пояса на WordPress сайте. Сейчас в этом нет ничего сложного.

Вы должны выбрать формат времени, удобный для ваших пользователей (читателей, покупателей). Например, вы работаете для пользователей Санкт–Петербурга.

Во-первых, выясняете, какой часовой пояс в Санкт–Петербурге. Он московский.

Во-вторых, в графе «Часовой пояс» на вкладке «Общие настройки», открываете список предлагаемых поясов. Поиска нет, поэтому ищите раздел «Европа», в этом разделе ищите не город Санкт–Петербург, а город Москва.

После сохранения вы увидите результат своей настройки. Если он вас устраивает, значит настройка времени WordPress прошла успешно.

Настройка времени WordPress по UTC

Для международных общений, существует всемирное координированное время — UTC. Это время гринвичского меридиана. Всемирное время на нём — UTC+00. Параметры «00» это отклонение времени по Гринвичу.

  • В Москве, Санкт–Петербурге время по Гринвичу UTC+3 (отклонение плюс три часа);
  • Во Владивостоке: UTC+10.

Узнав своё время по Гринвичу, вы можете поставить его в настройках часового пояса WordPress. Для этого ищите внизу списка раздел «Ручной сдвиг».

В чём разница

У вас, наверняка, возник вопрос, в чём разница настроек часового пояса WordPress по городу и настроек по Гринвичу.

Покажу на примере, почти без пояснений.

Пример 1

настройка времени WordPress по городу

  • Ставлю настройки часового пояса для города Москва.
  • В настройках формата времени ставлю законные, но нестандартные параметры H:I-T.
  • Сразу вижу, как будет показано время на сайте: 15:08-MSK.

Пример 2, альтернативный

настройка времени WordPress по Гринвичу

  • Ставлю в настройках часового пояса для города Москва, время по Гринвичу: UTC+3.
  • В настройках формата времени ставлю законные, но нестандартные параметры H:i-T.
  • Сразу вижу, как будет показано время на сайте: 15:29-GMT+0300.

Пойдём дальше

  • В настройках формата времени ставлю законный, но нестандартный параметр времени латинское «c».
  • Предварительный просмотр времени по этому формату в стандарте ISO 8601, будет такой: 2019-11-12T15:30:47+03:00.
  • Этот формат не зависит от настроек часового пояса по городу или по Гринвичу.

Заключение

Как видите, простая настройка времени WordPress может быть интересной. Однако играть со настройками формата времени, нет никакого смысла. Стандартных настроек по городу или по Гринвичу достаточно.

©wpkupi.ru

Еще статьи

Как изменить часовой пояс на VDS сервере

На VPS/VDS вы можете полностью изменить серверное время, на виртуальном хостинге только для PHP. Указать новый пояс вы можете через SSH и используя панель управления хостингом.

Через SSH

Подключаемся к серверу под root пользователя, далее удаляют текущую конфигурацию по установленному часовому поясу командой:

rm -f /etc/localtime

Теперь можно перейти к указанию нового времени. Если вы не уверены как точно следуют прописать ваш часовой пояс, используйте команду:

ls -l /usr/share/zoneinfo/

На экране вы получите список всех доступных временных зон.

Копируем название нужного пояса и через ln задает в таком виде:

ln -sf /usr/share/zoneinfo/Europe/Kiev /etc/localtime

На примере было задано время (GMT+2), по Киеву.

Через панель управления хостингом cPanel

  • для VPS/VDS

1)Делаем вход в учетную запись.

2)С главного меню переходим в настройки сервера.

3) Выбираем пункт серверное время “Time zone”.

4)Задает необходимый пояс из выпадающего списка и изменяем пояс кнопкой “Change TimeZone”.

  • для виртуального хостинга

На Shared доступна возможность менять часовой пояс только для элементов PHP.

1)Входим в панель.

2) С главной страницы переходим в “Select PHP version”.

3)В открытой вкладке вверху жмем на “Options”, чтобы открыть расширенные настройки. Ищем и именем пункт date.timezone.

Через панель ISPManager

  • для VPS/VDS

1)Выполняем вход в панель.

2)Через боковое меню переходим в “настройки” и выбираем “Настройки системы”. Изменим часовой пояс через пункт “Регион”

Готово.

  • виртуальный хостинг с ISPManager

1)Входим в панель.

2)С бокового меню переходим в блок “WWW” и выбираем здесь “PHP”.

3)Напротив нужной версии php кликаем на три точки для внесения дополнительных настроек. Ищем атрибут date.timezone и напротив него через три точки указываем новый часовой пояс.

82 просмотров

Отказ от ответственности: Вся размещенная информация была взята из открытых источников и представлена исключительно в ознакомительных целях а также не несет призыва к действию. Создано лишь в образовательных и развлекательных целях. | Так же, если вы являетесь правообладателем размещенного на страницах портала материала, просьба написать нам через контактную форму жалобу на удаление определенной страницы, а также ознакомиться с инструкцией для правообладателей материалов. Спасибо за понимание.

Если вам понравились материалы сайта, вы можете поддержать проект финансово, переведя некоторую сумму с банковской карты, счёта мобильного телефона или из кошелька ЮMoney.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить дату на фотографии документа
  • Как изменить дату на фотоаппарате canon
  • Как изменить дату изменения файла на компьютере
  • Как изменить дату на форд фокус 3
  • Как изменить дату изменения файла word

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии