Windows 服务器有一个注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation,其中字段 ActiveTimeBias 将返回您正在运行的机器从 GMT 开始的偏移量(以分钟为单位)。
我们有一个 Web 应用程序,它需要在我们生成的 html 页面上向用户展示他们的当地时间。为此,我们让他们为其时区设置首选项,然后获取上述值,以便可以比较服务器时间和客户端时间并进行正确的计算。
在我们构建的服务器上,这非常有效。我们正在将我们的应用程序部署到 1 层云提供商中,该提供商提供我们配置和使用的 windows 服务器 ami。我们发现,当您在本地服务器上使用时钟控制面板时,TimeZoneInformation 的注册表项是正确的。当我们对这个虚拟机做同样的事情时,除了 ActiveTimeBias 之外,条目都是正确的。
微软告诫不要以惯常的方式欺骗个人价值。
社区的问题 - 有没有其他人遇到过这个问题,如果有,你是如何解决的?