我有这个问题。在外部网站上,我有一个像这样的脚本:
<div id="idtest"></div>
<script src="//example.com/widget.js" type="text/javascript"></script>
example.com在https中(允许http和https)。在脚本widget.js的服务器中,我有:
$('#idtest').load("https://example.com/index.html")
我收到此错误:混合内容:“页面”上的页面已通过HTTPS加载,但请求了不安全的XMLHttpRequest端点“ http://example.com/index.html ”。该请求已被阻止;内容必须通过HTTPS提供。
我不明白:为什么出错,为什么端点在“ http”中?谢谢
编辑
更多信息:
如果在widget.js中,我这样做:
$('#idtest').load("./index.html")
内容已加载,并且如果我将脚本加载到我的网站中,所有内容都可以正常运行。
如果我做类似的事情:
x = "https://example.com"
$('#idtest').load(x + "/index.html")
或者
$('#idtest').load("https://example.com/index.html")
我收到错误消息(如果将脚本放在我的站点或外部站点中)。为什么?
编辑2
更多信息:
我的网站在django
编辑3
在firefox中,我将页面加载到https和http中。它在Chrome中不起作用。调用url时,我在firefox网络分析器中看到了这种情况:
302 https://example.com/index.html 200 http://example.com/index.html [混合内容]
有什么了解这种情况(https到http)?可能是Django重定向问题吗?
在以下情况下会发生混合内容错误:
https
)加载到不安全(http
)服务的页面上或相反
http
)加载到安全提供SSL(https
)服务的网页上您的错误消息警告您的呼叫页面已以不安全模式加载
您尚未明确解释这一点,但是您的错误表明您的网页没有使用SSL即可投放。当您尝试加载受保护的资源时,这将成为受保护资源和不安全的混合模式问题。
如果可能,您尝试以相同的方式提供参考文件
您可以在SSL(https
)中提供主页
您可以在中请求部分页面 http
$('#idtest')。load(“ http://example.com/index.html ”)
或者
关于您的特定资源:
我尝试加载:
和
https://example.com/index.html
结果是一样的。我得到一个简单的页面,并显示以下消息:
建立该域以用于文档中的说明性示例。您可以在示例中使用此域,而无需事先协调或征求许可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句