Как изменить таймзону приложения на Heroku?
После конфигурации и деплоя небольшого приложения на Heroku было обнаружено, что время и даты работают совсем не так, как ожидалось. Проблема довольно очевидная, но иногда простые проблемы заставляют подумать минуту-другую.
Проверка текущего часового пояса осуществляется следующим образом (Heroku CLI):
Проверка текущего часового пояса осуществляется следующим образом (Heroku CLI):
heroku config:get TZ --app=theglitchy-staging
В результате была получена пустая строка, что означает - нам пора установить TZ.
Для установки TimeZone из CLI выполним:
heroku config:add TZ="America/Monterrey" --app=theglitchy-staging
Вывод:
Setting TZ and restarting ⬢ theglitchy-staging... done, v67 ▸ Release command executing: this config change will not be available until ▸ the command succeeds. Use `heroku releases:output` to view the log. TZ: America/Monterrey
Данная команда прописала в таймзону переданное ей значение. Убедиться в том, что правки были внесены можно выполнив:
heroku config:get TZ --app=theglitchy-staging => America/Monterrey
Чтобы изменить/проверить таймзону из веб-интерфейса, необходимо:
- Залогиниться на Heroku Dashboard
- Перейти на нужное приложение
- Выбрать Settings вкладку
- Развернуть переменные среды нажав на кнопку "Reveal Config Vars"
В случае, если там уже установлена таймзона - нам нужно лишь изменить значение ключа "TZ":
Если значения TZ нет - его нужно создать вручную. Список TZ можно посмотреть на Википедии.