我收到安全警报:“您将被定向到不安全的连接。您发送到当前站点的信息可能会传输到不安全的站点。您要继续吗?” 当我尝试在我的客户 oscommerce 网站上以客户身份登录时。我注意到状态栏中的链接从 https 前缀变为非安全 http 前缀。该站点具有 SSL 证书,那么如何确保站点的整个商店部分都指向受保护的站点?
5 回答
页面的某些部分(通常是图像或脚本)很可能是非安全加载的。您需要在浏览器的“查看页面源代码”视图中逐一查看它们并消除原因(最常见的是指向 的配置设置http://
)。
您可能嵌入在您的网站上的一些外部工具(例如 Google Analytics)可以通过 包含在内https://
,有些则不能。在这种情况下,您可能必须从您的安全站点中删除这些工具。
如果无法切换所有设置,请尝试使用相对路径
<img src="/images/shop/xyz.gif">
但首先是使用浏览器的源代码视图识别非安全元素。
https://
如您所描述的,从页面立即重定向到页面http:/
不会导致警告。你能具体说明这是怎么回事吗?
确保通过 https 包含以下内容:
- css 文件
- js 文件
- 嵌入式媒体(图像、视频)
如果您确信 http 中没有包含您自己的内容,请检查跟踪像素和其他第三方小工具等内容。
编辑:现在您已经链接了您的页面,我发现您的<base>
标签是问题所在:
<base href="http://balancedecosolutions.com/products//catalog/">
改成:
<base href="https://balancedecosolutions.com/products//catalog/">
使用Fiddler并浏览您的网站,在列表中应该很明显使用 HTTP 和 HTTPS。
如果 Pekka 的建议不适合您的需求,您可以尝试使用基于架构(http 或 https)的相对链接:
例如,
<a href="//www.example.com/mypage.html">I am a 100% valid link!</a>
这种技术的唯一问题是它不适用于所有浏览器中的 CSS 文件。虽然它确实在 Javascript 和内联 CSS 中工作。(我在这里可能是错的;有人想检查吗?)。
例如,以下内容:
<link rel="stylesheet" href="/css/mycss.css" />
<!-- mycss.css contents: -->
...
body{
background-image:url(//static.example.com/background.png);
}
...
...可能会失败。
对源代码进行简单的查找/替换可能很容易。
在我看来,您提交的 HTML 表单被硬编码以发布到非安全页面。