Answers:
是的,有一个原因是您不应该在整个网站上使用它。某些浏览器(取决于品牌和版本)不会将HTTPS请求中的内容缓存到磁盘,这会严重降低用户的浏览体验,因为静态资产将随每个页面请求(样式表,javascript,标头图片等)一起加载。 。例如,Mozilla指出:
“磁盘缓存将已下载文件的副本保存在硬盘驱动器上,因此无需重新显示它们即可进行下载。拥有缓存文件夹权限的任何人都可以查看这些页面。使用SSL加密传输的页面通常包含敏感信息,并且将这些页面缓存到磁盘可能会带来隐私风险。此首选项控制是否缓存到使用SSL加密传输的磁盘页面。”
各个浏览器对HTTPS进行缓存的方式有些争议,但是仍然有很大的机会使许多用户禁用HTTPS请求的磁盘缓存。
其次,HTTPS 对于每个请求都需要“ 握手 ”,这会带来一些开销,这会影响性能并使请求更大(通常只有几个KB,但这是每个请求的总和)。HTTP KeepAlive可以限制这一点,但是对于非安全内容,这仍然是不必要的开销。
正如我所看到的,在整个站点上不使用HTTPS的唯一原因是,它将使您的某些服务器变慢,并且访问者的浏览体验会稍慢一些。话虽如此,但有好处。特别:
除了使您的开发人员不必担心在未加密的页面上显示安全数据外,在每个页面上使用HTTPS 确实没有技术上的原因。出于同样的原因,几乎没有理由不这样做。
最后但并非最不重要的一点是,一些雇主不喜欢他们的员工在“加密” https网站上浏览。国防/安全公司和组织就是这种情况,因此,如果您拥有“仅HTTPS”网站,则可能会失去部分访问者/客户,因为他们的网络根本不允许他们浏览您的网站。