如何为我的网站获取正确的时间?
Posted
技术标签:
【中文标题】如何为我的网站获取正确的时间?【英文标题】:How to get correct time for my website? 【发布时间】:2011-07-11 14:37:28 【问题描述】:我需要准确的时间,我的网站应该能够通过互联网访问以进行同步。我该怎么做?我应该每 30 分钟 ping 一些时间服务器(顺便问一下是哪一个?)吗? 那么我将如何应用 DST 设置来获取世界上任何地方的当地时间? 我有一个共享帐户,不确定我的网站是否能够访问互联网上的时间服务器。
【问题讨论】:
【参考方案1】:据我所知,这通常是由操作系统管理的。根据您使用的脚本语言,几乎总有一种方法可以获取当前时间戳。
编辑:2011 年 3 月 9 日
如果你喜欢惩罚,你可以尝试实现(或使用实现的组件)NTP Protocol。就像我在原始帖子中所说的那样,这通常是由操作系统/域控制器处理的,我对此并不了解。
关于时区,处理此问题的最佳方法是使用通用时间坐标 (UTC) 在您的网站内部跟踪时间。绝大多数脚本语言都具有检索当前 UTC 的功能。可以使用 Olson Timezones 从本地时间转换为 UTC 并返回。这是一个包含全球所有时区所有变化的数据库。如果用户登录您的网站,则应要求他们指定时区。否则,您可以根据用户发送的一些匿名数据(IP 地址、接受语言等)“猜测”使用哪个时区。
您提到您有一个共享帐户。您正在使用或计划使用哪种操作系统/脚本语言?
【讨论】:
操作系统无法保证准确性。我想使用国际时间服务器。 @user543087 - 请查看我的更新答案以及对您的评论的反馈。 我想要每 10 分钟的最新准确时间。我可以从哪个服务器同步?我将在 unix 平台上使用 php。 如果您使用的是 Linux,让系统时钟同步的最直接的方法可能是通过 NTP 守护程序 (eecis.udel.edu/~mills/ntp/html/ntpd.html)。您提到它是一个共享帐户,所以我不确定您是否有权安装/配置这样的选项。至于服务器列表,您可以查看pool.ntp.org 或tf.nist.gov/tf-cgi/servers.cgi。最后,由于您使用的是 PHP,值得一提的是,该语言支持各种时区函数php.net/manual/en/book.datetime.php。以上是关于如何为我的网站获取正确的时间?的主要内容,如果未能解决你的问题,请参考以下文章