您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Django | 连接的路径位于基本路径组件{%static img.thumbnail.url%}之外,带有白噪声的错误400

Django | 连接的路径位于基本路径组件{%static img.thumbnail.url%}之外,带有白噪声的错误400

我想这是一个安全问题。即使“ whitenoise”可以很好地在生产环境中提供真正的静态文件,也不能提供媒体文件

我犯了一个结构错误

# Don't place your 'media' files IN your 'static' file like this :

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

永远不必放在项目的“静态”文件中(即使您可以使其在某些方面起作用,但我认为这不是一个好习惯)。

必须在Django项目之外提供。我读过某个地方,我们必须使用CDN。首先,我选择CloudFlare(因为它是免费的),但是它不能正常工作,因为您需要一个子域/主机名来指向MEDIA_ROOT,而Cloudflare却没有这样做。最后,我选择Amazon S3。

因此,总而言之,写类似的东西{% static img.thumbnail.url %}是没有意义的。因为通过管理员/用户上传的所有内容都不必处于“静态”状态。

使用{{ img.thumbnail.url }}代替。

Go 2022/1/1 18:43:17 有252人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶