HTTP和HTTPS的区别

1. 协议基础

  • HTTP(HyperText Transfer Protocol):运行在 TCP 之上,是明文传输的协议。
  • HTTPS(HTTP Secure) :在 HTTP 和 TCP 之间加了一层 SSL/TLS 加密层,实现加密传输。

面试加分点:可以提到 HTTPS = HTTP + SSL/TLS。


2. 数据安全性

  • HTTP :所有数据(包括 URL、请求头、请求体、Cookie 等)都是明文传输,容易被中间人窃听、篡改或伪造。
  • HTTPS :通过 对称加密 + 非对称加密 + 数字证书 保证:
    • 机密性(Confidentiality):数据加密,无法被窃听;
    • 完整性(Integrity):防止数据被篡改;
    • 身份认证(Authentication):通过 CA 证书验证服务器身份,防止钓鱼。

面试加分点:可简要说明 TLS 握手过程(ClientHello → ServerHello → 证书交换 → 密钥协商 → 加密通信)。


3. 端口不同

  • HTTP 默认使用 80 端口
  • HTTPS 默认使用 443 端口

4. 性能开销

  • HTTPS 因为需要进行加密/解密和 TLS 握手,会带来一定的性能开销(如额外的 RTT 延迟);
  • 但现代优化技术(如 TLS 1.3、会话复用、0-RTT)已大幅降低这一影响。

面试加分点:可提一下 HTTP/2 通常只在 HTTPS 下启用,反而能提升整体性能(多路复用、头部压缩等)。


5. SEO 与浏览器支持

  • 搜索引擎(如 Google)优先索引 HTTPS 网站;
  • 现代浏览器对 HTTP 网站标记为"不安全",影响用户体验和信任度;
  • 很多新 Web API(如 Geolocation、Service Worker、Web Push)仅在 HTTPS 下可用

总结一句话回答(适合开场):

"HTTP 是明文传输的协议,而 HTTPS 在 HTTP 基础上加入了 SSL/TLS 加密层,保障了通信的安全性、完整性和身份认证。"


如果你是前端开发者,还可以补充:

  • 在开发中应始终使用 HTTPS,尤其是在处理用户敏感信息(登录、支付等)时;
  • 使用 HSTS(HTTP Strict Transport Security)头强制浏览器使用 HTTPS;
  • 注意混合内容(Mixed Content)问题:HTTPS 页面中加载 HTTP 资源会被浏览器阻止。
相关推荐
o0麦嘎10 小时前
内网ip配置https
网络协议·tcp/ip·https
sinat_2554878110 小时前
第七部分。介绍MVC(模型-视图-控制器)模式
java·ide·http·tomcat·intellij-idea
潜创微科技11 小时前
4K60 over IP 方案简介
网络·嵌入式硬件·网络协议·tcp/ip·音视频
pride.li11 小时前
海思视觉Hi3516CV610--开机自动设置ip
linux·网络·网络协议·tcp/ip
源图客11 小时前
Minio配置HTTPS服务
服务器·网络协议·https
liulilittle14 小时前
bpftrace 跟踪 tcp_write_xmit (内核TCP写出提交)
网络·网络协议·tcp/ip
bkspiderx16 小时前
Boa Web服务器HTTPS支持的源码改造方案
服务器·前端·https·web服务器·boa·https支持
齐鲁大虾16 小时前
如何彻底解决从公网HTTP页面请求私有HTTP资源跨域问题
网络·网络协议·http
g3voip17 小时前
洁净室IP电话机是什么?无尘车间语音通信设备的功能与部署要点
网络·网络协议·tcp/ip
taocarts_bidfans17 小时前
外贸站点HTTPS全站加固与混合内容报错彻底修复方案
https·独立站·外贸独立站·taoify