NodeJs时区与Linux时区不同

时间:2019-04-29 14:51:25

标签: node.js linux datetime centos timezone

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

现在我的Linux时区是IRAN(例如7:00 PM),而我的节点Date()返回UTC(下午4:30)。

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

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

1 个答案:

答案 0 :(得分:0)

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

首先,我更改了Centos的时区,而我在pm2上的应用仍在UTC时区。

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

然后,我重新启动了CentOs服务器,并预期更改将生效,但尚未成功。服务器启动后,pm2重新加载了我的应用程序,它仍在使用UTC时区。

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

因此请记住,无论您对“ Linux TimeZone”还是“ TZ var”进行任何操作,pm2都会记住添加应用程序时所在的时区,并将其保留在某个位置并将其用作应用程序的时区