Если я правильно вас понял, проблема в том, что:
- Какой-то (новый) пользователь загружает страницу.
- Вы хотите, чтобы пользователь увидел что-то, что отражает егочасовой пояс (вероятно, некоторое время UTC, преобразованное в их часовой пояс.
- Во время этого первого запроса сервер не знает, какой у них часовой пояс.
- WAT DO?
Самое прямое решение - сделать все это на стороне клиента (если я не пропущу некоторые требования - ваш вопрос не совсем ясен относительно вашего контекста). Обеспечьте вывод содержимого сервера в UTC, завернутый в некоторый элемент HTML со специальным классом(т. е. <span class="datetime">2012-01-2 01:02:03 UTC</span>
, и затем некоторые javascript заменяют содержимое этих элементов на более удобное для пользователя, локализованное представление местного времени.
Конечно, JS на самом деле не дает вамчасовой пояс. Он просто дает вам смещение (через getTimezoneOffset ()), но этого должно быть достаточно для отображения, если я не забуду что-то (что довольно вероятно, так как у меня есть расплывчатая записьЯ решил, что это разочаровывает в какой-то момент, но я думаю, что это потому, что я хотел фактический часовой пояс вместо смещения из-за перехода на летнее время).