会话问题与django + apache + mod_wsgi

时间:2010-12-12 10:01:08

标签: django apache session login mod-wsgi

我已经写了一个django应用程序,并把它放在CentOS服务器上。当我使用django开发Web服务器时,它绝对没问题。

例如我用" python ./manage.py runserver"启动它,然后从另一台计算机上的浏览器访问该服务器。我可以登录一次,并且可以毫无问题地访问所有页面。

但是当我用apache + mod_wsgi运行它时,我发现我必须用时间用户和密码登录。我想也许会话中间件存在一些问题,那么,我怎样才能找到根本原因并修复它呢?

1 个答案:

答案 0 :(得分:2)

有两种不同的选择。

为了可能性(imho):

  • 会话后端使用缓存系统存储会话,并且您正在使用locmem缓存后端
  • 会话后端没有存储cookie(启用安全cookie?cookie超时?服务器上的日期不正确?)
  • 可能未加载会话中间件(生产服务器的自定义设置?)

如果使用memcached作为缓存后端,将会话存储在缓存中只是一个很好的解决方案。因此,如果您将会话存储在缓存中,请确保使用memcache:)

无论哪种方式,请检查SESSION_ENGINE是否设置为django.contrib.sessions.backends.db