当debug设置为False时,我无法登录我的Django应用程序

时间:2010-04-15 08:23:40

标签: python django apache login debugging

简短的故事:当Debug设置为False时,我被锁定在我的Django应用程序中。

长篇故事:

案例1(第一次发生):

  1. 我输入了我的登录信息,但它只是重定向到登录页面。
  2. 我重启服务器,尝试登录,工作正常,我进去了。
  3. 几个小时后我回来,退出,尝试重新登录,但我不能。它只是重定向到登录页面。
  4. 案例2(我弄清楚如何引发登录失败):

    1. 我重新启动服务器并能够登录该站点。
    2. 我登录并多次退出,一切都很好。
    3. 我转到不存在的页面并收到服务器错误。
    4. 我退出并尝试重新登录,但我不能,只是重定向回登录页面。
    5. 案例3(我不能在Debug设置为True的情况下引发登录失败): 1.我重新启动服务器,然后能够登录该站点。 我登录并多次退出,一切都很好。 3.我转到一个不存在的页面并获得追溯。 我退出并重新登录,一切正常。 5.我等待并使用它,并且在调试模式下无法使登录失败。

      请帮忙!

5 个答案:

答案 0 :(得分:1)

您是否设置了自定义500错误处理程序?这可能会让会话变得奇怪吗?

答案 1 :(得分:1)

我遇到了同样的问题。以下是我要解决的问题:

我意识到cookie会话被保存了两次......我不知道为什么但经过多次更改后终于开始工作......只需设置

SESSION_SAVE_EVERY_REQUEST = True
SESSION_COOKIE_NAME = 'something'

就是这样。

答案 2 :(得分:0)

我猜这与管理类中的错误有关,需要重新启动devserver才能继续。

由于没有报告任何内容,我会尝试删除所有的admin.py定义,只使用基本的admin.site.register(SomeModel)来查看是否仍然发生,然后重新添加它们直到它重新发生。

答案 3 :(得分:0)

确保urls.py文件从django.conf.urls.defaults.

导入所有内容

您可能已经明确导入了某些方法,例如模式和包含(就像我打击PyDev的'野生导入'警告消息一样)。 因此,将省略将Django的默认处理程序分配给404和500 HTTP错误代码的关键语句。 这显然是不受欢迎的,并导致问题中描述的奇怪行为。

答案 4 :(得分:0)

我的问题是,如果我设置了SESSION_COOKIE_SECURE = True,那么我将无法以http模式登录。

我不得不将其更改为SESSION_COOKIE_SECURE = False

也许你也有这个?