TextDrive のタイムゾーン設定
2006-10-25
TextDrive は海外のサーバなので、当然時刻は日本時間に設定されていない。 少し調べたところ、環境変数 TZ に JST-9 を設定すればいいみたい。
シェル
.zshrc に設定を追加する。
export TZ=JST-9
これで date コマンドの結果が、日本時間 (JST) で表示されるようになる。
$ date
Wed Oct 25 19:37:23 JST 2006
irb でも同じ。
irb(main):001:0> Time.now
=> Wed Oct 25 19:38:00 JST 2006
lighttpd + Trac (FastCGI)
etc/lighttpd/vhosts.d/trac.conf の bin-environment に設定を追加する。
fastcgi.server = ( "/trac" =>
( "trac" =>
( "socket" => base + "/var/run/trac-fastcgi.sock",
"bin-path" => base + "/share/trac/cgi-bin/trac.fcgi",
"max-procs" => 1,
"check-local" => "disable",
"bin-environment" =>
( "TRAC_ENV_PARENT_DIR" => base + "/var/trac",
"PYTHONPATH" => base + "/lib/python2.4:" + base + "/lib/python2.4/site-packages",
"TZ" => "JST-9",
)
)
)
)
これで Trac の Timeline などで表示される時刻が日本時間になった。
この方法じゃだめだった。 たまたま、シェルに TZ を設定していたので上手くいっているように見えただけだった。
代わりに、 lighttpd の起動シェル (etc/rc.d/lighttpd.sh) に設定した。
HOME=/users/home/`whoami`
LIGHTTPD_CONF=$HOME/etc/lighttpd/lighttpd.conf
PIDFILE=$HOME/var/run/lighttpd.pid
export SHELL=/bin/sh
export TZ=JST-9
今度こそ大丈夫だ。 Trac だけじゃなくて、 lighttpd のログも日本時間で表示されるようになった。
Apache
Webmin の「CGIプログラム」を開いて、「CGIスクリプトの環境変数」に変数 TZ と値 JST-9 を設定する。 実際のディレクティブには下記が追加される。
SetEnv TZ "JST-9"