我试图更好地理解Http / Https,可能还有我正在发送客户端的标题。
当客户端已经在Http下获取时,客户端是否必须在Https下重新获取相同的文件,或者我是否需要发送特殊的头文件?
嗯,通过http / https提供文件的原因是它只是一个横幅。当用户转到安全页面时,横幅仍在该特定模板中。一旦用户通过Https获取文件,该文件将按预期缓存。
沃尔特
答案 0 :(得分:1)
您不需要再次获取文件(绝对不应该)。
HTTPS HTTP与SSL / TLS结合使用。它创建了一个安全的连接,可以帮助防止窃听和中间人攻击。
您不需要通过安全通道再次获取它 - 无论是否通过加密通道获取,内容都是相同的。
如果您通过安全通道再次获取内容,则有人可能仍然第一次“收听”并看到您提取的数据。如果第二次与第一次没有任何关联,则取出的行为。
如果您需要增加HTTPS的安全性,请不要通过非加密的HTTP获取文件,因为它不安全,因此不受保护。
不需要执行HTTP然后HTTPS请求,只需执行一个HTTPS。
答案 1 :(得分:1)
https
被视为与http
不同的“域”,因此如果您通过http连接向客户端发送文件,请切换到https(即使您不更改其他内容) )浏览器仍然会再次请求文件 - 就像文件不在缓存中一样。就像你请求http://www.example1.com/file.txt然后http://www.example2.com/file.txt可能是“相同”文件一样,但是浏览器不知道,所以它必须再次获取它。
一旦通过https请求它,它将正常缓存。
答案 2 :(得分:0)
网站可以通过HTTP和HTTPS提供不同版本的文件,因此浏览器必须将它们视为独立的。
所有内容均由网址缓存。由于URL包含协议,因此文件的HTTP和HTTPS版本将有单独的缓存条目。
避免这种情况的方法是始终提供文件的HTTPS版本。您不能使用安全页面的HTTP版本,或者遇到IE的可怕混合内容警告: