0

我试图找到我发布的问题名称的答案,但我似乎找不到答案。

我一直在查看 Django 的几个教程,他们一直告诉我,当您处于 Django 的生产级别时,您不应该使用 MEDIA_URL 和 MEDIA_ROOT 类型的约定。

但这是为什么呢?有什么具体原因吗?

4

1 回答 1

2

特别是这些变量没有任何问题。事实上,由于性能和安全问题,您永远不想在生产环境中使用 Django 的开发服务器来提供静态文件。

开发服务器非常有用,因为它允许您在开发期间只使用 Django 来提供静态文件和媒体文件,但它无论如何都不是生产 Web 服务器(例如 Nginx)。

这些文档一如既往地很有帮助:https ://docs.djangoproject.com/en/3.1/howto/static-files/#serving-uploaded-files-in-development

适用于静态文件的内容也适用于媒体文件。关于静态文件部署的策略,文档上也有一整页

一些软件包,例如 Whitenoise,在处理生产中的静态文件时有帮助,但 Whitenoise 不能用于媒体(用户上传的)静态文件(因为它大致在开始时发现静态文件)。

于 2020-11-06T15:46:02.427 回答