У меня в шаблонах 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 просто отлично. Но файл logo.png, который находится в том же каталоге, что и style.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
0
tipu 30 Май 2010 в 23:49

3 ответа

Лучший ответ

Я не решал проблему под рукой, НО, я смог в конечном итоге обслуживать файлы через сам Apache. Я использовал найденное здесь решение: http: // oebfare. ком / блог / 2007 / Декабрь / 31 / Джанго - и - статические -файлы /

0
tipu 30 Май 2010 в 20:23

Очень странный. Какой код ошибки возвращается при запуске curl -I http://localhost:8000/logo.png?

Скорее всего, возможные проблемы могут быть:

  • Опечатка (в имени файла или в шаблоне)
  • права доступа
  • Плохие данные (действительно ли это PNG? Как-то его опорожнили?)

Кроме того, urlpatterns у вас там, кажется, помещает носитель в /. Я полагаю, это то, что вы хотите?

0
David Wolever 30 Май 2010 в 19:54

Этот URL Джанго выглядит нормально для меня.

Два запроса curl обращаются к Apache (Server: Apache / 2.2.14 (Ubuntu)), а не к Django, поэтому ваши urlpatterns могут не иметь ничего общего с ошибками, которые вы видите. Вы уверены, что Apache смотрит на этот каталог, а не на другой? Попробуйте поменять изображение на другое и посмотрите, изменится ли оно - если это не так, вы поймете, что путаются пути к каталогам.

0
Anthony Briggs 31 Май 2010 в 02:32