【问题标题】:Django - Serving files from media directoryDjango - 从媒体目录提供文件
【发布时间】:2012-08-27 22:43:23
【问题描述】:

我已将一个新网站部署到我的登台和生产服务器,但由于某种原因,媒体目录中的图像显示 404 错误。图片路径正确,图片位于该路径:

<img src="/media/projects/hair/2012/test-1/13221803.jpg" alt="Slide 1" width="570" height="270" style="">

ls -la ~/.virtualenvs/website/project/media/projects/hair/2012/test-1
total 144
drwxr-x--- 2 username username   4096 Aug 27 16:43 .
drwxr-x--- 3 username username   4096 Aug 27 16:43 ..
-rwxrwxr-x 1 username username 131719 Aug 27 16:43 13221803.jpg

settings.py:

MEDIA_ROOT = os.path.join(PROJECT_ROOT, 'media')
MEDIA_URL = '/media/'

我是否因为图像文件嵌套在其他目录中而遇到问题?从静态目录中提供文件就好了,有什么想法吗?

谢谢,

杰森

【问题讨论】:

  • 你运行 manage.py collectstatic 了吗?

标签: python django


【解决方案1】:

你的 urls.py 有这个目标吗?

    urlpatterns += patterns('',
            (r'^media/(?P<path>.*)$', 'django.views.static.serve', {
                    'document_root': settings.MEDIA_ROOT}))

【讨论】:

  • 让网络服务器提供静态内容而不是 django 会更好。
  • 查看此 URL link。如果指定 STATIC_URL,则可以指向 apache 或 nginx 来提供静态文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-08
  • 1970-01-01
  • 2010-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-29
相关资源
最近更新 更多