mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

PHP - タイムゾーンエラー!

[ サーバ構築 ] [ PHP, ScientificLinux ]

こんばんは。

当方の自宅サーバ(ScientificLinux6.0)で何か動きが重いことがあるのでログをチェックしてみると、 apacheのエラーログに以下のようなエラーが非常に大量に出力されていました。 ログローテーションしているけどファイルが2GB以上になっていて、Tripwireのファイル改ざんチェックでも引っかかっています。

1
2
[Sun Jul 03 03:55:52 2011] [error] [client 999.999.999.999] PHP Warning:  strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in /var/www/wordpress/wp-includes/functions.php on line 33
[Sun Jul 03 03:55:52 2011] [error] [client 999.999.999.999] PHP Warning:  date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in /var/www/wordpress/wp-includes/functions.php on line 105

調べてみるとPHPのドキュメントに以下のような記述がありました。

1
2
3
date.timezone string

PHP 5.3.0 より前のバージョンで、 環境変数 TZ が設定されていない場合に 全ての日付/時刻関数で使用されるデフォルトのタイムゾーン (PHP 5.3.0 以降では 環境変数 TZ を参照しなくなりました)。 優先順については、date_default_timezone_get() のページで解説されています。サポートしているタイムゾーンについては サポートされるタイムゾーンのリスト を参照ください。

解決策を調べてみると、php.ini内の"date.timezone"部分を以下のようにすればよいようです。

1
date.timezone = Asia/Tokyo

(date_default_timezone_set関数を設定する方法もあるようですが未確認)

これでログが肥大化しなくなり、今までより動作が軽くなったようにも感じます。

以上。

Comments