我强制https
访问我的网站,但必须加载某些内容http
(例如视频内容不能通过 https),但浏览器由于mixed-contents
策略而阻止了请求。
经过数小时的搜索,我发现我可以使用Content-Security-Policy但我不知道如何允许混合内容。
<meta http-equiv="Content-Security-Policy" content="????">
我强制https
访问我的网站,但必须加载某些内容http
(例如视频内容不能通过 https),但浏览器由于mixed-contents
策略而阻止了请求。
经过数小时的搜索,我发现我可以使用Content-Security-Policy但我不知道如何允许混合内容。
<meta http-equiv="Content-Security-Policy" content="????">
你不能。
CSP 用于限制您网站上的内容,而不是放松浏览器限制。
为用户提供某些保证的安全 https 站点,然后允许在其上加载 http 内容是不公平的(因此会出现混合内容警告),如果您可以在未经用户同意的情况下隐藏这些警告,则真的不公平。
您可以将 CSP 用于帮助迁移到 https 的一些事情,例如:
您可以使用它自动将 http 请求升级为 https(尽管浏览器支持并不普遍)。如果您错过将 http 链接更改为 https 等效项,这将有所帮助。然而,这假设资源可以通过 https 加载,听起来你不能通过 https 加载它们,所以这不是一个选项。
您还可以使用 CSP 来帮助您识别您错过的站点上的任何 http 资源,方法是向您可以监控的服务报告一条消息,说明已尝试加载 http 资源。这允许您识别并修复指向 https 的 http 链接,因此您不必依赖上述自动升级。
但两者都不是你真正想要的。