TextDrive のタイムゾーン設定
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"