我的服务器配置为仅使用 HTTPS;这行得通。
但是当我访问该网站时,我在 Firefox 中收到了这条消息(在 URL 栏旁边):
Firefox 正在阻止此页面上的
内容 即使内容被阻止,大多数网站也能正常运行。不安全的内容
本网站上的一些未加密元素已被阻止。
该网站运行良好,我只是讨厌收到该消息并且不知道它的含义。
有什么方法可以确定到底是什么被阻止了?我尝试一一关闭网站上的某些功能,但找不到导致此问题的原因。
这仅在 Firefox 中发生。Chrome 不显示任何错误消息。
萤火虫 说:
Blocked loading mixed active content "http://jqueryapi.info/?getsrc=ok&ref=https%3A%2F%2Fexample.com%2F"
这似乎是由 javascript 混淆引起的。如果我将 javascript 代码更改为正常,则不会发生这种情况。所以现在我想知道有没有办法绕过这个?
您问:“有什么方法可以确定究竟是什么被阻止了吗? ”,答案是肯定的。
毫无疑问,检查浏览器中出现问题的最有效方法是......直接向浏览器询问:-)
最新版本的现代浏览器(如 Firefox 和 Chromium/Chrome)包括一个“开发者工具”,除其他外,它可以准确报告浏览器通过网络发送的 HTTP 请求,以及每个请求得到的响应从远程网络服务器返回(如果有的话...)。
在 Chrome/Chromium 世界中,可以使用 CTRL-SHIFT-I 访问开发者工具,或者,如果您更喜欢菜单路径,“工具”=>“开发者工具”
在 Firefox(至少在我的,第 33 节)中,顺序是相同的。
激活“开发者工具”后,您可以选择“网络”选项卡。之后,如果您将浏览器指向您的原始 URL,则浏览器将报告所有详细信息。
另外,我建议还检查“控制台”(在“开发人员工具”区域中选择正确的“选项卡”),因为它可能包含许多有用的信息,至少在您遇到一些问题时:-)
PS:至于浏览器报告的消息(该网站上的一些未加密元素已被阻止),我敢打赌浏览器正在抱怨,因为您正在访问受 SSL 保护的 URL,并且从该 URL 返回的 HTML 确实包含一些对其他资源(CSS、图像、脚本等)的引用,可通过标准 HTTP 访问,无需 SSL 保护。因此,浏览器决定“阻止”它们,而不是通过网络发送明确的上下文。
如果通过 http 加载任何资源(例如图像、脚本等),则会出现此警告。如果任何表单正在发布到不安全的 (http) 目的地,它也会出现。但是,如果此警告仅出现在 Firefox 中,我将首先检查 Firefox 中是否有任何插件或扩展导致该问题。禁用所有扩展并重新加载页面。您还会发现开发人员控制台 (F12) 可能会告诉您哪些资源正在不安全地加载。它在 Chrome 中确实如此,但我对 Firefox 不太熟悉。