0

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コンソールダッシュボードで変更できるものはありますか?

4

1 に答える 1

0

「MySQL コンソールでは、サーバー上で実行されているスクリプト言語から取得したと常に想定していた SYSTEM と表示されます」。

そうではありません、申し訳ありません。@ネルソンは正しいです。MySQL は、mysqld サーバー マシンのデフォルトのタイム ゾーン設定からデフォルトのタイム ゾーンを取得します。スクリプト言語のタイムゾーン設定は大文字と小文字を区別しません。

mysqld は EC2 インスタンスで実行されていますか? その場合、その OS インスタンスのデフォルトのタイム ゾーン設定を変更する必要があります。その方法を調べることができます。デフォルトのタイムゾーンを変更した後、EC2 インスタンスを再起動すると役立つ場合があります。

混乱を最小限に抑えるために、システムのタイム ゾーンを UTC (Z またはズールー時間とも呼ばれ、以前はグリニッジ標準時と呼ばれていました) に設定することをお勧めします。そうすれば、サマータイムが開始または終了したときに物事が跳ね返ることはありません。

于 2012-09-27T01:59:02.237 に答える