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

от автора

Из-за постоянных изменений с переходом на зимнее-летнее время в РФ это самое время может отображаться на вашем сайте и на сервере некорректно. К тому же время PHP (если собран без опции —with-system-tzdata) и системное время — разные вещи. Поэтому нужно проводить две настройки.
Как то помучился с поиском решения этой проблемки, делюсь фиксом.
У меня «родная» временная зона Europe/Moscow, но время на сервере бежало вперёд на час, поэтому я корректировал на сервере и в php таймзону на Europe/Kaliningrad. Для PHP прописал в etc/php5/apache2/php.ini:

date.timezone = "Europe/Kaliningrad"

Но это как бы «костыли». Будем делать «по феншую»…

Для PHP нужно установить или обновить timezonedb:

pecl install timezonedb

или

pecl upgrade timezonedb

и подключить расширение:

echo "extension=timezonedb.so" > /etc/php5/conf.d/timezonedb.ini

Перезапускаем веб-сервер и радуемся…

Если у вас не обновлялась база часовых поясов в системе, то загружаем и ставим последнюю версию:

mkdir ~/timezone cd ~/timezone wget ftp://ftp.iana.org/tz/tzdata-latest.tar.gz tar zxvf tzdata-latest.tar.gz zic europe ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

В некоторых дистрибутивах Linux, вместо ссылки используется копирование скомпилированного файла в /etc/localtime.
Не забудьте убрать «костыли», если подбирали подходящую зону для корректировки времени.

ссылка на оригинал статьи http://habrahabr.ru/post/269449/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *