首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django上提供上传的图片时出现问题

问在Django上提供上传的图片时出现问题
EN

Stack Overflow用户
提问于 2018-09-21 03:49:18
回答 1查看 54关注 0票数 0

用户上传图片后,总是返回404错误。我认为这是一个Nginx的missconfig,但我不确定,经过几个小时的搜索和尝试,我仍然不明白这个问题。

这是我的settings.py:

代码语言:javascript
复制
DEBUG = False
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR,'static'),
)

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

接下来,我的urls.py:

代码语言:javascript
复制
urlpatterns = [
...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

和我的Nginx配置文件:

代码语言:javascript
复制
location ^/static/ {
    autoindex on;
    alias /home/user/mywebsite/site/static;
}

location ^/media/ {
    alias /home/user/mywebsite/site/media;
}

下面是一个图像生成的URL:https://www.mywebsite.com/media/CACHE/images/img/venus/758c9f7d70d0c64b5631cc865986de48.jpg (404)

我使用Django Imagekit来处理上传的图像。我总是建立这些网址weird...maybe ImageKit需要更多额外的配置?

我的静态目录和媒体目录在/mainappdjango/static中,而不是根目录中。如果我不这样做,我的静电就不会加载。图像已经很好地上传到了服务器上(我可以使用FTP或SSH访问它)。

您知道导致这404错误的故障吗?:/

非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2018-09-21 04:19:17

您的nginx配置错误。还得加点调料。

代码语言:javascript
复制
location /static/ {
    alias /home/user/mywebsite/site/static/;
    autoindex on;
}
location /media/{
  alias /home/user/mywebsite/site/media/;
  autoindex on;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52432314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档