【问题标题】:Uploading image files to Django site on Linode将图像文件上传到 Linode 上的 Django 站点
【发布时间】:2011-07-01 03:24:21
【问题描述】:

我正在使用 Debian 6 在 Linode 上设置 Django 站点,但无法上传图像。我在模型中设置了上传目标,并且我的 settings.py 文件已配置,并且可以毫无问题地使用所选文件保存模型,但图像永远不会写入我服务器上的目录。我认为这可能是权限问题,但无法弄清楚如何修复它或找到任何解决方案。任何帮助将不胜感激。

【问题讨论】:

  • 您需要提供更多信息。您尝试上传到的文件夹是否属于运行 apache/uwsgi 的同一用户?您的 MEDIA_ROOT/STATIC_ROOT 在 settings.py 中设置为什么?你是怎么上传文件的?通过django-admin?在您的模型中使用 FileField?
  • 我的目标文件夹归根帐户所有,我如何找到运行我的 apache/wsgi 进程的用户?我在我的模型中使用 ImageField 并且我的静态目录中的 CSS 正在运行,并且设置类似于媒体目录。我认为这是您建议的所有权问题。
  • 希望 apache 以它自己的用户身份运行,而不是 root,所以这可能是问题所在。您可以使用 'htop' 或仅使用 'top' 检查哪些用户正在运行 apache。
  • 看起来 apache 以用户 www-data 的身份运行。我已经递归地将媒体目录的所有权更改为 www-data 但仍然没有骰子。

标签: django file-upload


【解决方案1】:

我没有在我的表单元素中设置正确的 enctype 来处理文件。

<form action="" method="post" enctype="multipart/form-data">

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多