我有一个小的Django网站,用户可以链接到其他网站上的图片。它绝不是核心功能。
我刚将整个网站移至SSL。这在大多数情况下都运行良好,但远程图像显然并不总是可以通过SSL获得。只有最轻微的域名拥有有效证书。
通过那时漏斗图像的最佳方式是什么?
第二个似乎不那么重要了(我觉得只有NGINX规则才有可能)但是它也会打开网站直到人们使用我的代理来获取他们自己的邪恶......我想要避免。
这里最好的妥协是什么?
答案 0 :(得分:2)
Github遇到了同样的问题,当他们到处移动到HTTPS并在他们的博客中详细说明:https://github.com/blog/743-sidejack-prevention-phase-3-ssl-proxied-assets
他们的解决方案是创建一个代理服务器,他们打开来源https://github.com/atmos/camo为了解决滥用代理的相同问题,它与应用服务器共享秘密。整合这个将是一个Django项目将是直接的,因为您只需要从给定图像URL的共享密钥生成摘要。