Django dev服务器提供的css文件具有错误的mimetype

Django dev服务器提供的css文件具有错误的mimetype,django,server,mime-types,django-dev-server,Django,Server,Mime Types,Django Dev Server,我的浏览器(firefox)控制台确认收到状态为200的文件,但firefox向我提供以下信息: The stylesheet http://localhost:8000/css/full-width-pics.css was not loaded because its MIME type, "text/html", is not "text/css". localhost:8000 The stylesheet http://localhost:8000/css/mainstyle.css

我的浏览器(firefox)控制台确认收到状态为200的文件,但firefox向我提供以下信息:

The stylesheet http://localhost:8000/css/full-width-pics.css was not loaded because its MIME type, "text/html", is not "text/css". localhost:8000
The stylesheet http://localhost:8000/css/mainstyle.css was not loaded because its MIME type, "text/html", is not "text/css". localhost:8000
正如Django正在为文件提供服务,但只是使用了错误的mimetype:所有文件都给出了状态代码200:

[05/Jul/2015 08:52:33]"GET / HTTP/1.1" 200 6263
[05/Jul/2015 08:52:33]"GET /css/full-width-pics.css HTTP/1.1" 200 6263
[05/Jul/2015 08:52:33]"GET /js/bootstrap.min.js HTTP/1.1" 200 6263
[05/Jul/2015 08:52:33]"GET /css/mainstyle.css HTTP/1.1" 200 6263
[05/Jul/2015 08:52:33]"GET /js/jquery.js HTTP/1.1" 200 6263
这是我到目前为止发现的

Django使用python猜测mime类型。Python使用它运行的系统猜测mime类型。在注册表中某个地方的windows中。我在Ubuntu上,所以对我来说是在/etc/mime.types中

我在/etc/mime.types中找到了这一行:

text/css                    css
这意味着问题不在于我的系统。那么python有问题吗?否。正在运行以下命令:

import mimetypes
mimetypes.guess_type("test.css")
('test/css', none)
给我以下信息:

import mimetypes
mimetypes.guess_type("test.css")
('test/css', none)
我试过其他答案中的一些“黑客”。其中一个技巧是将
mimetypes.add_type(“text/css”,“.css”,True)
添加到settings.py。它不起作用

另一种方法是将
url(r'.*\.css$',views.css),
添加到url.py,并将其添加到views.py:

def css(request):
    filename = request.path.strip("/")
    data = open(filename, "rb").read()
    return HttpResponse(data, mimetype="text/css")
也没用。我把它们都拿走了。现在我只想知道为什么会发生这种情况,以及如何正确地修复它。我确定问题出在Django身上,但我不确定在哪里

还有一条重要的信息。这只是在我开始使用模板继承之后才开始发生的。在此之前,
直接位于index.html中,并且运行良好。现在它位于base.html和index.html的“extends”base.html中。我正在学习Django,所以我刚开始使用模板继承


如果您已经阅读了所有这些内容,请多谢。

如果您尝试直接在浏览器中加载,会发生什么?它是否显示了正确的内容?也有这个问题,你最终修复了它吗?@orange1不幸的是,我没有。我求助于使用我的生产服务器(使用Gunicorn和NginX)进行开发,而不是django的开发服务器。虽然我很快就要开始使用Git了,但要经常上传文件是一件痛苦的事情。我也可以在我的笔记本电脑上安装Gunicorn和NginX,但这太麻烦了。如果你找到了修复方法,请告诉我。好的,我确实设法修复了它。事实证明,我犯了一个相当愚蠢的错误——我缺少了模板链接的正斜杠。不过,我不小心在目录中创建了一个模板副本,因此我正在编辑一个与所提供的文件不同的文件。不确定这是否是您的问题,但仔细检查您的标记是否具有类似于
src=“/static/js/jquery.js”