django+apache+mod_wsgi 的会话问题

发布于 2024-10-07 05:05:28 字数 254 浏览 1 评论 0原文

我编写了一个 django 应用程序,并将其放在 CentOS 服务器上。当我使用django开发web服务器时绝对没问题。

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

然而,当我使用 apache+mod_wsgi 运行它时,我发现我必须一次又一次地使用用户名和密码登录。我认为会话中间件可能存在一些问题,那么,如何找到根本原因并修复它呢?

I've written a django application, and put it on a CentOS server. It is definitely okay when I use django development web server.

Such as I start it by "python ./manage.py runserver", and access that server from browser on another computer. I can sign in one time, and access all the pages without issues.

However when I run it with apache+mod_wsgi, I just found I have to login with user and password time by time. I think maybe there is some problem with the session middleware, so, how can I find the root cause and fix it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁月静好 2024-10-14 05:05:28

为此有几种不同的选择。

按照可能性的顺序(恕我直言):

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

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

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

There are a couple of different options for this.

In order of likelyhood (imho):

  • The session backend uses the cache system to store the sessions and you're using the locmem cache backend
  • The session backend isn't storing the cookies (secure cookies enabled? cookie timeouts? incorrect date on the server?)
  • The session middleware might not be loaded (custom settings for production server?)

Storing the session in the cache is only a good solution if you use memcached as the cache backend. So if you're storing the sessions in cache, make sure you use memcache :)

Either way, check if SESSION_ENGINE is set to django.contrib.sessions.backends.db

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文