【问题标题】:NodeJs timezone differs Linux timezoneNodeJs 时区与 Linux 时区不同
【发布时间】:2019-04-30 22:42:55
【问题描述】:

我有一个安装了 npm 的 Linux 服务器(具体来说是 CentO)。服务器的时区是 UTC,我将其更改为 IRAN (+4:30)。

现在我的 linux 时区是伊朗(比如下午 7:00),而我的节点 Date() 返回 UTC(下午 4:30)。

如何完全更改 Node 的默认时区(而不是在正在运行的应用程序上)?我搜索了很多,我找到的每个答案都是针对节点应用程序,而不是一般的节点服务。我希望更改 Node 的时区,而不是应用程序。

:(顺便说一句,我的CentOs没有任何GUI。欢迎以文本模式回答

【问题讨论】:

  • 我更改了 TZ 环境变量,节点 TimeZone 已设置,但在 pm2 我的应用程序仍显示 UTC TimeZone
  • 由于您没有显示任何代码,因此几乎不可能解决您之前评论中提出的问题。

标签: node.js linux datetime centos timezone


【解决方案1】:

我通过尝试不同的方法找到了解决方案。

首先我更改了 Centos 的时区,我在 pm2 上的应用程序仍然是 UTC 时区。

然后我使用 cp /usr/share/zoneinfo/Asia/... 更改了 TZ 变量,但仍然没有结果。

然后我重新启动了我的 CentOs 服务器,期望更改生效,但还没有结果。服务器启动后,pm2 重新加载了我的应用程序,它仍然使用 UTC 时区。

最后我从 pm2 中删除了我的应用程序,然后再次添加它。那是我的应用程序开始使用本地时区的时候。

因此请记住,无论您对“Linux TimeZone”或“TZ var”做什么,pm2 都会记住您添加应用程序时的时区,并将其保存在某处并将其用作应用程序的时区.

【讨论】:

    猜你喜欢
    • 2011-06-23
    • 1970-01-01
    • 1970-01-01
    • 2019-06-14
    • 2012-11-22
    • 2017-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多