使 MEDIA_ROOT 指向网站 url 而不是本地目录

Make MEDIA_ROOT point to a website url instead of a local directory

所以我有两个 Django 项目,一个主站点和一个子站点,它们都 运行 在具有不同域名的不同服务器上。媒体文件存储在主站点上并且只能发布到主站点,但子站点必须以某种方式访问​​这些媒体文件。

我如何配置 MEDIA_ROOT 设置(或其他,就此而言,在我的项目中)以便从我的主站点自动获取媒体文件。或者我可以进行哪些更改,以便在处理任何类型的媒体文件时将固定的 URL(我的主站点的)添加为前缀。

P.S。我正在使用 pythonanywhere(两个 beginner/free 帐户,每个站点一个)。

我认为您可以简单地忽略 MEDIA_ROOT 并设置 MEDIA_URLMEDIA_ROOT 用于获取资源,其中 MEDIA_URL 用于构建 url。

@见https://docs.djangoproject.com/en/3.0/ref/settings/#std:setting-MEDIA_URL

请阅读MEDIA_STATIC_之间的区别。 MEDIA 用于用户上传的文件。

更多信息位于:

https://docs.djangoproject.com/en/3.0/topics/files/

https://docs.djangoproject.com/en/3.0/howto/static-files/