我的URL模式,

urlpatterns += patterns('',
     (r'^(?P<path>.*)$', 'django.views.static.serve',
     {'document_root': '/home/tipu/Dropbox/dev/workspace/search/images'})

在我的模板中

<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}style.css" />

它为CSS提供服务。但是文件徽标。

<img src = "{{ MEDIA_URL }}logo.png" id = "logo" />

知道为什么吗?

编辑:

在这里,它们在同一目录中: http://i.imgur.com/wlssb.png

root@tipu_ubuntu:/home/tipu/Dropbox/dev/workspace/search# curl -I http://localhost:8080/logo.png
HTTP/1.1 404 Not Found
Date: Sun, 30 May 2010 19:56:54 GMT
Server: Apache/2.2.14 (Ubuntu)
Vary: Accept-Encoding
Connection: close
Content-Type: text/html; charset=iso-8859-1

root@tipu_ubuntu:/home/tipu/Dropbox/dev/workspace/search# curl -I http://localhost:8080/style.css
HTTP/1.1 200 OK
Date: Sun, 30 May 2010 19:57:06 GMT
Server: Apache/2.2.14 (Ubuntu)
Last-Modified: Thu, 27 May 2010 03:28:14 GMT
Content-Length: 1447
Content-Type: text/css
Vary: Accept-Encoding
Connection: close
有帮助吗?

解决方案 2

我没有解决手头的问题,但是,我能够通过Apache本身最终提供文件。我在这里找到了解决方案: http://oebfare.com/blog/2007/dec/31/django-and-static-files/

其他提示

很奇怪。运行时返回什么错误代码 curl -I http://localhost:8000/logo.png?

就在我的头顶上,可能的问题可能是:

  • 错字(在文件名或模板中)
  • 权限
  • 不良数据(真的是PNG吗?它以某种方式被清空了吗?)

另外, urlpatterns 您似乎将媒体放在 /. 。我想那是你想要的?

那个django URL对我来说还可以。

这两个卷曲请求是击中apache(服务器:apache/2.2.14(ubuntu)),而不是django,因此您的urlpatterns可能与您看到的错误无关。您确定Apache正在查看该目录而不是另一个目录吗?尝试将图像换成不同的图像,看看它是否更改 - 如果没有更改,您会知道您的目录路径混淆了。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top