Web服务器与浏览器之间主要使用HTTP和HTTPS协议通信,底层靠TCP传输数据,HTTPS只是给HTTP加了一层TLS加密。 弄清这套协议栈,浏览器输入网址后发生什么、网站为什么打不开、要不要上HTTPS这些问题基本都能顺藤摸瓜。
web服务器和浏览器之间用的什么协议?先分清HTTP与HTTPS分工
浏览器和Web服务器之间的通信,本质上是请求与响应,浏览器发起请求,服务器收到后返回结果,HTTP就是双方约定的“说话规矩”。
- HTTP:超文本传输协议,运行在TCP之上,默认端口80,它无状态,一次请求返回后连接就断开,下次请求再重新建立,HTTP/1.1增加了keep-alive,让多个请求可以复用一条TCP连接。
- HTTPS:HTTP加上TLS/SSL加密层,默认端口443,数据在传输前加密,中间人抓包只能看到乱码,无法直接读取内容。
- WebSocket:通过HTTP握手升级而来,建立后双向长连接,适合聊天、股票行情、实时通知。
- HTTP/2:二进制分帧、头部压缩、多路复用,多个请求可以同时在一个TCP连接上跑。
- HTTP/3:基于UDP的QUIC协议,减少握手延迟,弱网环境表现更好,但尚未全面取代HTTP/2。
如果把浏览器比作点餐的顾客,Web服务器就是后厨,HTTP是服务员递单子的规矩,HTTPS相当于给菜单和菜都装进带锁的箱子,服务员只负责搬运,看不了内容。
浏览器输入网址后发生了什么?从DNS到TCP再到TLS握手
这一步是很多人好奇的场景,浏览器输入网址后,内部要完成一串协议握手,整个过程可以用浏览器开发者工具直接看到。
- DNS解析:浏览器先查本地缓存、hosts文件,再向DNS服务器查询域名对应的IP地址,这一步把方便记忆的域名翻译成服务器地址。
- TCP三次握手:浏览器与服务器IP的443端口建立TCP连接,三次握手是为了保证双方都能收发数据。
- TLS握手

:如果是HTTPS,浏览器和服务器协商加密套件、验证证书、生成会话密钥,TLS 1.3将握手压缩到一次往返,大幅降低延迟。
- 发送HTTP请求:浏览器发送请求报文,包含方法(GET/POST)、路径、请求头、Cookie等。
- 服务器返回响应:服务器处理请求,返回状态码(如200、301、404)和响应体。
- 浏览器渲染:解析HTML、CSS、JS,下载静态资源,最终画出页面。
- 连接处理:请求结束后TCP连接可能保持复用,或四次挥手关闭。
实操验证可以在浏览器按F12打开开发者工具,进入Network面板,刷新页面后点击任意请求,能看到协议版本、状态码、TLS握手耗时、内容下载时间,也可以在命令行执行:
curl -v https://example.com
输出中会显示TLS握手过程、证书信息以及HTTP请求头,非常适合理解协议交互。
http和https的区别在哪里?安全、端口、证书与性能对比
http和https的区别在哪里?这个问题经常出现在网站改版或部署证书之前,核心差异不是“多一个s”这么简单,而是安全模型完全不同。
| 对比项 | HTTP | HTTPS |
|---|---|---|
| 默认端口 | 80 | 443 |
| 数据传输 | 明文 | 加密 |
| 证书要求 | 不需要 | 需要CA签发证书 |
| 地址栏显示 | 无锁标识 | 显示小锁 |
| 防篡改 | 无 | 有完整性校验 |
| 性能 | 握手少,稍快 | 多TLS握手,TLS 1.3后差距很小 |
| 搜索引擎友好度 | 一般 | 多数搜索引擎优先收录HTTPS |
HTTP像寄明信片,邮局工作人员能直接看到内容,HTTPS像寄一个带密码锁的箱子,只有收件人能打开,现在浏览器对HTTP网站会标记“不安全”,这也是很多站点迁移到HTTPS的直接原因。

性能方面,早期HTTPS确实比HTTP慢,因为多了TLS握手和加解密开销,但TLS 1.3普及后,握手次数减少,再加上HTTP/2多路复用,HTTPS和HTTP的实际体验差距已经很小,行业共识认为,网站上线前直接启用HTTPS,比后期从HTTP迁移要省事得多。
免费https证书和付费https证书怎么选?一年大概多少钱
免费https证书和付费https证书的主要区别在验证等级、品牌信任度和售后支持,价格上,免费证书不花钱,付费证书年费根据验证等级不同差异较大,多数情况下从数百元到数千元不等,具体以证书服务商报价为准。
- 免费证书:常见如Let’s Encrypt、ZeroSSL,支持自动续期,申请快,适合个人博客、测试环境、内部系统,缺点是只有域名验证(DV),不显示组织名称,部分老设备兼容性稍弱。
- 付费DV证书:验证域名所有权,价格较低,签发快,适合中小网站。
- 付费OV证书:验证组织身份,证书中显示公司名称,适合企业官网、政府机构。
- 付费EV证书:验证最严格,但近年来主流浏览器地址栏不再突出显示公司名称,EV标识弱化,除非有合规要求,否则OV证书多数情况下够用。
选择时不用盲目追求高价,个人站点用免费DV证书完全够,企业官网用OV证书能提升信任,电商支付场景可评估OV或EV,免费证书和付费证书在加密强度上没有本质差异,差别主要在身份验证和赔付保障上。
北京企业网站部署HTTPS,实操步骤与配置示例
北京企业网站部署HTTPS,最常见的问题是证书申请完后不知道如何配置到服务器,以下以Nginx为例,给出一条可落地的路径。
前提条件:服务器安全组或防火墙已放行443端口,域名已解析到服务器IP。
- 在证书服务商处申请并下载Nginx格式证书,通常包含两个文件:证书链文件(如
fullchain.pem)和私钥文件(如private.key)。 - 将两个文件上传到服务器目录,例如
。
/etc/nginx/ssl/
- 修改Nginx站点配置,增加443监听:
server { listen 443 ssl; server_name www.example.com; ssl_certificate /etc/nginx/ssl/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/private.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5;}配置80端口跳转HTTPS,避免用户访问HTTP时看到“不安全”提示:
server {
listen 80;
server_name www.example.com;
return 301 https://$host$request_uri;
}
- 执行
nginx -t检查配置是否正确,再用systemctl reload nginx重载服务。 - 用
curl -I https://www.example.com验证返回状态码和证书信息。
北京地域的服务器,北方用户访问延迟相对较低,业内专家指出,启用OCSP Stapling可以减少TLS握手时的证书吊销查询时间,对北京及周边用户访问速度有直接帮助。
web服务器与浏览器通信这条链路,核心就是:HTTP负责传数据,HTTPS负责加密传数据,TCP负责铺路,选协议、配证书、上HTTPS,围绕这条主线去做就不会乱。
web服务器与浏览器通信协议常见问题Q&A
web服务器和浏览器之间用什么协议传输数据?
主要使用HTTP和HTTPS协议传输数据,HTTPS在HTTP基础上增加TLS/SSL加密,底层通常通过TCP传输,HTTP/3使用QUIC基于UDP,但尚未全面替代TCP。
浏览器访问https网站一定安全吗?
不一定,HTTPS只保证传输过程加密和服务器身份校验,如果网站本身存在漏洞、被植入恶意代码或证书私钥泄露,用户仍可能遭受攻击,浏览器地址栏显示小锁只说明传输加密,不代表网站内容可信。
websocket和http是什么关系?
WebSocket通过HTTP协议发起握手,请求头带Upgrade: websocket,服务器返回101状态码后切换为长连接,此后两端可以互相主动推送数据,不再遵循HTTP一问一答模式,WebSocket建立后使用独立的帧协议传输数据。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/831207.html


评论列表(2条)
这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是加密部分,给了我很多新的思路。感谢分享这么好的内容!
@雨雨1206:读了这篇文章,我深有感触。作者对加密的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!