Django日志抛出500内部服务器错误

1 投票
2 回答
3192 浏览
提问于 2025-04-16 13:08

我在我的Django项目中登录时遇到了一些问题。

在我的view.py文件里,我在一个“应用程序”中做了以下操作:

import logging

logging.basicConfig(filename="django.log",level=logging.DEBUG)

def request(request):
    logging.debug("test debugging")

并且在与view.py文件同一个目录下有一个django.log文件。

现在,当我从浏览器发出请求时,总是出现500内部服务器错误,Firebug里显示的就是这个错误。我在使用交互式Python命令行或者像下面这样执行一个.py文件时,日志记录工作得很好:

import logging

logging.basicConfig(filename="django.log",level=logging.DEBUG)

def testLogging():
    logging.debug("test debugging")

if __name__ == "__main__"
    testLogging()

然后执行python nameOfFile.py

我到底哪里做错了呢?我正在使用Django 1.1.1和Python 2.6.5。也许我应该升级Django?

2 个回答

1

这是你整个视图吗?如果能贴出具体的错误信息就更好了。不过要注意,视图必须返回一个 HttpResponse 对象,即使是一个空的也可以。所以如果这就是你整个视图的话,出现500错误的原因可能是因为你没有返回任何东西。

在这个视图的最后加上 return HttpResponse(),如果这样做之后还是不行,请把错误信息贴出来。

1

这可能跟权限有关吧?我想在网络服务器的环境下,写文件可能会受到限制。其实我也不太确定,不过你可以看看官方的Django日志文档 - 它使用的是标准的日志模块,但你可能需要以不同的方式来配置它。

撰写回答