我有一个ASP.NET站点,应该通过HTTPS完全传输。但是,在谷歌浏览器中,我收到一条警告,指出该页面包含不安全的资源。如何找出这些资源以及为什么不通过HTTPS?
答案 0 :(得分:87)
我在Chrome中也遇到过这个问题。我检查了“网络”选项卡,但所有资源都是通过https加载的。
解决方案:关闭Chrome并重新打开。
Chrome必须缓存其安全内容检测,这样即使您解决了问题,不安全的内容消息也不会消失。
答案 1 :(得分:42)
通常会发生这种情况,因为您在不使用https的情况下加载图片,javascript包含文件或外部CSS文件。您可以使用FireBug等程序:http://getfirebug.com/
FireBug将告诉您元素的加载方式以及哪些元素不会通过ssl层。如果你没有firefox,那么我很确定Chrome也有类似FireBug内置的东西。
以下是使用firebug的方法:
希望这有帮助
答案 2 :(得分:37)
我与提供此在线脚本的人无关,但它很简单,可以在任何浏览器中添加书签..运行良好,快速解决问题.. http://www.whynopadlock.com
答案 3 :(得分:8)
在谷歌浏览器中:您可以在Console
窗口的Inspect Element
标签中查看有问题的资源。
它将列为:
https://example.com/page处的页面显示来自 http 的不安全内容://example.com/resource
当然,您可能需要重新加载已打开Inspect Element
窗口的页面。
答案 4 :(得分:6)
最简单的方法之一是在Firefox中右键单击该页面,然后选择查看页面信息。然后转到媒体选项卡,找到从http而不是https加载的任何内容。
答案 5 :(得分:5)
我们已经抓住了自己的痒,并编写了一个工具来抓取您的网站,并告诉您哪些网页上有非SSL资源。您只需输入网站的根URL即可 - 无需手动检查每个页面。
答案 6 :(得分:2)
我注意到当我遇到这个问题时,工具栏(uTorrent)导致错误。我删除了工具栏,错误就消失了。不确定为什么工具栏会在我的网站上导致错误,但SSL证书不再存在问题。
答案 7 :(得分:1)
在Chrome中,您可以通过执行以下操作找出通过http与https加载的资源:
1)在“扳手”菜单中,选择“工具”>开发人员工具
2)单击“资源”工具栏图标
3)展开Frames文件夹以查看不同的页面。展开要查看其资源的页面。然后列出页面的各个资源,按图像,脚本和样式表分类
4)要查看用于加载该资源的URL,只需将鼠标悬停在资源名称上,即可显示URL或http或https。您还可以单击图像名称以查看右侧的图像及其URL
答案 8 :(得分:1)
要添加到此,我右键单击“网络”选项卡视图中的列标题并选择“协议”。
如果您随后单击“协议”标题,则报告的内容将按HTTPS等分组
答案 9 :(得分:0)
Chrome拥有自己的开发者工具。
您可以右键单击页面,检查它..然后单击“网络”选项卡并重新加载页面。你会看到工作流程。
答案 10 :(得分:0)
我不知道是否有人会检查这个答案 或者您可能已经找到了解决方案,但无论如何,我的回答可能会帮助其他遭遇类似问题的人
这是我用来检查加载到我页面的不安全内容/文件的链接。
希望它有所帮助。 :)
答案 11 :(得分:0)
我刚刚在chrome中发现了相同的行为(firefox显示了绿色锁定),即使所有资源都是通过https加载的。
我的理由是服务器支持破解(google poodle)SSLv3。
设置ssl_protocols以在nginx.conf中排除SSLv2,如此
answeredGridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getActivity()," "+position,Toast.LENGTH_SHORT).show();
questionposition = position;
Intent intent = new Intent(getActivity(), AnswerDetailsActivity.class);
intent.putExtra("Image_position",position);
intent.putExtra("question_id",id);
startActivity(intent);
getActivity().finish();
}
});
为我解决了这个问题。
我认为不幸的是,Chrome并没有使这个理由更加透明。 “这个页面不安全地加载一些资源”如果没有错误就会产生误导。
答案 12 :(得分:0)
如果您想从自己的桌面上抓取自己的网站,以获取已加载的所有资源的列表(不过请注意,不是由javascript加载的),如果使用Windows,则可以使用Xenu's link sleuth。导出TSV文件,然后右键单击并使用excel打开,然后按URL排序,然后可以找到该网站上所有页面的那些讨厌的http资源!