bul*_*ula 2 browser https http
当我们输入没有协议的网站名称时,浏览器会使用正确的协议(即 http 或 https)提供正确的网站
例如,如果我输入 google.com 并按回车键,浏览器会给我https://google.com
浏览器如何做到这一点?
这不是标准化的行为,因为没有 RFC 文档说明如果用户没有指定协议,客户端应该如何行为。但是可能,在大多数默认配置中,客户端首先尝试使用不安全的连接(例如http://
)进行连接。他们只是猜测您打算http://
在 URL 前面输入。
在这种情况下,不是客户端确定该站点可通过安全连接(例如https://
)访问,而是 Web 服务器重定向您的客户端请求。因此,当google.com
在浏览器的地址栏中输入时,您的浏览器首先连接到http://google.com
,并且网络服务器google.com
将您的请求重定向到https://google.com
。这就是为什么你最终仍然https://
使用谷歌版本的原因。
您甚至可以通过http://google.com
在地址栏中手动输入来尝试此操作。Google 仍会将您重定向到https://google.com
. 但这并不是大多数网络服务器软件的默认行为,谷歌不得不在他们的网络服务器配置中手动指定“HTTPS 重定向”。
尽管如此,有些客户端还是有可能https://
先尝试-connection,只有在http://
失败时才重新连接。这是一种更安全的行为,尽管在大多数情况下它可能不是默认设置,但有例如HSTS允许站点将自己标记为https://
,并且某些站点甚至可能在浏览器中预先标记。(正如@kicken 指出的那样,谢谢!)然后有实现此过程的浏览器插件(例如 Firefox 的“HTTPS Everywhere”)。这些插件附带提供https://
安全连接的站点列表,当用户通过浏览器而不是网络服务器输入此类站点的 URL 时,即使网站管理员没有为其设置 HTTPS 重定向地点。http://
时,前面是否有协议,用户将被重定向到https://
归档时间: |
|
查看次数: |
1113 次 |
最近记录: |