整个网站的HTTPS


10

我正在一个相当标准的网站上工作,其中包含公共内容以及注册用户的个人/定制内容。我知道用户登录或发送信用卡详细信息时需要使用HTTPS。我有理由不只在整个网站上使用HTTPS吗?

Answers:


12

是的,有一个原因是您不应该在整个网站上使用它。某些浏览器(取决于品牌和版本)不会将HTTPS请求中的内容缓存到磁盘,这会严重降低用户的浏览体验,因为静态资产将随每个页面请求(样式表,javascript,标头图片等)一起加载。 。例如,Mozilla指出

“磁盘缓存将已下载文件的副本保存在硬盘驱动器上,因此无需重新显示它们即可进行下载。拥有缓存文件夹权限的任何人都可以查看这些页面。使用SSL加密传输的页面通常包含敏感信息,并且将这些页面缓存到磁盘可能会带来隐私风险。此首选项控制是否缓存到使用SSL加密传输的磁盘页面。”

各个浏览器对HTTPS进行缓存的方式有些争议,但是仍然有很大的机会使许多用户禁用HTTPS请求的磁盘缓存。

其次,HTTPS 对于每个请求都需要“ 握手 ”,这会带来一些开销,这会影响性能并使请求更大(通常只有几个KB,但这是每个请求的总和)。HTTP KeepAlive可以限制这一点,但是对于非安全内容,这仍然是不必要的开销。


2
这里的一切都是真实的。但是,我们已经运行了一个完整的SSL网站已有大约5年了,我们从未收到用户的投诉。他们中的大多数是公司,因此在IE6和IE7上是这样,而在Firefox上则有一些。缓存似乎可以正常工作,但是我们在很多图像上设置了明确的内容过期规则,我不知道这是否有所作为。
马克·亨德森

5
不要猜测:测试:-)。检查缓存是否正常工作的一种简单(尽管很粗糙,但并非100%完成)方法是检查服务器日志中是否存在用户请求。他们是请求所有图像/文件还是仅请求未缓存的内容?单个用户不能很好地判断延迟时间,但是将其汇总后,可以看到毫秒数,因此,我肯定会确保速度确实可以接受。
约翰·穆勒

10

如果您打算运行完整的SSL,请确保您正在使用的所有托管第三方服务(广告服务器,分析,共享工具等)均具有SSL版本,否则您将在某些浏览器上收到混合内容警告。


5

另一个问题是,一切从服务的任何一页,然后确实需要通过SSL去,包括第三方资源。例如,我们发现这是YouTube之类的真正问题。由于Google不能通过SSL提供YouTube视频,这意味着您要嵌入到网站页面中的任何YouTube视频将引发“此页面包含安全和不安全的内容”警告。尽管在大多数浏览器中这都是微妙的,但它在IE中是一个巨大的对话框,可能会导致某些用户很快放弃您的网站,将他们的数据紧紧抓住。


2

您还应该考虑增长。如果只有一个Web服务器,则必须决定:是否要在每个单独的服务器上提供HTTPS?我看到了更常见的设置,其中HTTPS服务器较少,因为它们通常仅用于处理敏感细节,而HTTPS服务器则更多,因为它们倾向于接收大量流量。HTTPS为您的每个设置增加了一些复杂性。只是要记住一点。


1

正如我所看到的,在整个站点上不使用HTTPS的唯一原因是,它将使您的某些服务器变慢,并且访问者的浏览体验会稍慢一些。话虽如此,但有好处。特别:

  1. 您将永远不必担心将要确保安全的数据放置在站点的任何页面上。你不能忘记
  2. 用户会注意到您的网站已完全加密,因此在向您提供信息方面可能会更安全。
  3. 用户知道您的网站属于您的公司,尚未被接管。

除了使您的开发人员不必担心在未加密的页面上显示安全数据外,在每个页面上使用HTTPS 确实没有技术上的原因。出于同样的原因,几乎没有理由不这样做。


不在整个站点上使用HTTPS的其他原因...将使用更多带宽,因为从理论上讲不会缓存页面。
MrWhite

“您永远不必担心将要确保安全的数据放在站点的任何页面上。” -我不确定这是真的。Google会默认为这些页面建立_和cache_(!)索引。如果需要,它似乎可以将缓存的版本作为纯HTTP服务。
MrWhite

0

最后但并非最不重要的一点是,一些雇主不喜欢他们的员工在“加密” https网站上浏览。国防/安全公司和组织就是这种情况,因此,如果您拥有“仅HTTPS”网站,则可能会失去部分访问者/客户,因为他们的网络根本不允许他们浏览您的网站。


您有任何证据吗?您可以链接到支持该主张的文章吗?
安德鲁·洛特

我对这个主题有自己的经验。我经营着一个大型的军事网站,在测试HTTPS设置时,我们发现这对我们的大部分用户来说都是一个问题,这是因为其雇主不允许https从其网络上进行冲浪(甚至通过以下方式访问银行,维基百科和其他网站) https是不可能的)。当我们被Google强迫切换到https时,我启动了另一条有关如何解决此问题的线程-这不是每个人都知道的问题,但是它可能会发生,并且人们可能需要考虑一下。
Radek

我向我自己解释说,某些监视工具需要监视代理服务器上的数据包的“内容”或这些用户与网站之间的任何“中间人”,以便能够监视安全问题,保密性或其他任何方面,并使用SSL禁用这样的监视。因此,在这些公司中不允许使用https(不是所有公司都说,但显然至少其中一些公司是)
Radek 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.