我已将php.ini文件中的时区指定为东海岸时间:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = America/New_York
$ service apache2 restart
但我的数据库日期时间条目指定西部时间(落后3小时)。当我在MySQL控制台中查看时区时,它会说SYSTEM,我一直认为它来自服务器上运行的任何脚本语言。在apache2.conf中,我看到知道改变时区的方法,所以没有。
任何人都知道如何在正确的轨道上获取我的条目而不必在共享服务器上运行的每个单独的php文件中指定正确的时区?如果有任何安慰,我在美国西部 - 俄勒冈州地区运行EC2实例。我可以在EC2控制台仪表板中更改任何内容吗?
答案 0 :(得分:0)
“在MySQL控制台中,它说SYSTEM,我一直认为它来自 无论在服务器上运行哪种脚本语言“。
不是这样,很遗憾地说。 @Nelson是对的。 MySQL从mysqld服务器计算机的默认时区设置获取其默认时区。脚本语言的时区设置与案例无关。
您的mysqld是否在您的EC2实例中运行?如果是这样,您需要更改该OS实例的默认时区设置。你可以查看如何做到这一点。更改默认时区后,您可能会发现重新启动EC2实例很有帮助。
为了最小化混淆,最好将系统时区设置为UTC(也称为Z或Zulu时间,以前称为格林威治标准时间)。这样,当夏令时开始或关闭时,事情不会反弹。