それはさらに簡単にすることができます。 JavaScriptを使用しているので、JavaScriptを使用してクライアントのタイムゾーンも調整してみませんか?
- サーバーに常にUTCとして保存
- UTCとしてクライアントに提供します
- クライアントはJavaScriptを使用してローカルタイムゾーンに時間を調整します
これにより、作業が簡単になるだけでなく、モデルの問題も解決されます。ニューヨークでアカウントを登録したがオーストラリアに旅行している場合、オーストラリアのタイムゾーンに従って時刻を確認したいと思います。実際、使用するJavaScriptを使用すると、設定を簡単に調整できるため、デザインがさらに動的になります。次に、ユーザーのタイムゾーンを保存するオーバーヘッドを回避できます。
とは言うものの、デザインをJavaScript以外のブラウザーに劣化させたい場合は、(CookieをフェッチするためにJSに依存するのではなく)HTTPCookieに依存する完全なサーバー側アプローチを採用する方がよいでしょう。