自从2天前update django的新代码后出现了一个很大的问题。当使用django内置的web 服务机制后会不断的重起。这个问题xiaoping.tang也发现了,并和我一同研究,希望找出其中的答案。
  值得注意的事,如此大的一个bug竟然在django论坛上没人提出来过。到底是我们自己的问题,还是django的代码真的出错了呢?
  研究发现,django将需要监视的文件mtime数据都写入字典中,通过比较mtime是否发生改变而产生重起动作。在没有任何改变的情况下,当进行一次访问后,django代码通过stat.st_mktime获得的数据确发生了变化,这个起初让我完全无法理解。
  不过,如果仔细查看以下变化的情况就会发现其中的奥秘。 

time.ctime(1135012483) 'Tue Dec 20 01:14:43 2005' time.ctime(1134983683) 'Mon Dec 19 17:14:43 2005'


  相差八个小时:)
  再通过代码分析,应该是环境变量里的TZ设置没有被认可。
  将settings.py中的TIME_ZONE = ‘Asia/Shanghai PRC’ 改成 TIME_ZONE = ‘CCT’ 即可。
  看来django改变了tz的判断,只支持最基本的tz描述了。呜呼哀哉。


2条评论

  1. 我这个改了好像还是不起作用。我试着显示了时间,依然有时差。不知是怎么回事。不管我怎么改TIME_ZONE,时差始终没有变,好像不起作用似的。

  2. 这个问题变态呐

    到现在还在有

    困绕死我了

    还好limodou兄指教我到这里来看看

    才得以解决!

    谢谢fatbobman~~

发表评论

评论也有版权!