Django CMS - link 上传图片 returns 404

Django CMS - link to uploaded image returns 404

我有一个 Django 1.8.4 站点和 Django CMS 3.1.3。通过 djangocms-picture 插件,我希望编辑能够将图像上传到站点。如果我使用此插件在页面上上传图像,图像最终会位于服务器上的以下文件夹中:

[PATH_TO_APP_ROOT]/media/cms_page_media/8/

其中“8”是页面的 ID。当我浏览页面时,图像的 link 给出为

https://[MY_SITE]/media/cms_page_media/8/my_image.png

但是这个 link 不正确,我得到了 404。我很难弄清楚我遗漏了什么,但似乎有一些 URL 设置应该更改.

在 settings.py 我有:

MEDIA_ROOT = os.path.join([PATH_TO_APP_ROOT], "media")
MEDIA_URL = "/media/"

其中[PATH_TO_APP_ROOT]同上。我没有更改任何媒体设置 given in the Django CMS docs 所以它们应该都是默认设置。我很困惑服务器在 /media/cms_page_media/8/my_image.png 中查找图像,因为此 URL 的 cms_page_media 部分来自 CMS_PAGE_MEDIA_PATH,这不是 URL 设置( ?)。我需要寻找什么设置来更正此问题?

请注意,我在 DEV(本地)中一切正常 - 问题仅出现在生产服务器上。

终于有时间调查一下:问题是网络服务器 (pythonanywhere) 配置不正确。在他们的管理工具中,我必须指定媒体文件夹的路径。当我这样做时,它成功了,无需更改任何 Django 设置。

更多信息在这里:https://help.pythonanywhere.com/pages/DjangoStaticFiles