0

我有一个小 Django 站点,用户可以在其中在评论中链接到其他站点上的图像。这绝不是核心功能。

我刚刚将整个站点移至 SSL。这在大多数情况下工作得很好,但远程图像显然并不总是可以通过 SSL 获得。只有最少量的域具有有效证书。

那么,将图像汇集到一起的最佳方法是什么?

  • 在用户发帖时下载它们并将 URL 更改为本地 URL?
  • 制作一个仅代理另一个 URL 的代理?

第二个似乎工作量更少(我觉得仅使用 NGINX 规则就可以),但它也会向使用我的代理的人开放网站以获得他们自己的邪恶利益......我想避免这种情况。

这里最好的妥协是什么?

4

1 回答 1

3

当 Github 到处迁移到 HTTPS 并在他们的博客中详细说明时遇到了同样的问题:https ://github.com/blog/743-sidejack-prevention-phase-3-ssl-proxied-assets

他们的解决方案是创建一个代理服务器,他们将其开源为https://github.com/atmos/camo为了解决对滥用代理的同样担忧,它与应用程序服务器共享秘密。集成这将是一个 Django 项目,因为您只需要从给定图像 url 的共享密钥生成摘要。

于 2013-11-12T16:25:02.650 回答