你有没有想过,当你在浏览器里输入一个网址,比如 www.163.com,页面是怎么一下子跳出来的?这背后其实有个默默工作的“信使”,它叫 HTTP 协议。
HTTP 是什么?
HTTP 全称是 HyperText Transfer Protocol,翻译过来就是“超文本传输协议”。简单说,它是浏览器和网站服务器之间对话的一套规则。你点开一个网页,浏览器就通过 HTTP 向服务器说:‘把那个页面给我’;服务器收到后,就把网页内容发回来,整个过程就像点餐——你下单,厨房出菜。
家里上网时,HTTP 到底干了啥?
比如你躺在沙发上用手机刷新闻,点击一条标题,手机上的浏览器就会发起一个 HTTP 请求。这个请求经过你家的路由器、运营商网络,一路跑到新闻网站的服务器。服务器处理完请求,再通过 HTTP 把网页数据送回你的手机,然后你就看到了文章内容。
这个过程通常几秒内完成,但如果你家 Wi-Fi 信号弱,或者路由器老旧,数据来回传得慢,页面加载就会卡。这时候你看到的‘转圈圈’,其实是 HTTP 请求还在路上没回来。
HTTP 请求长什么样?
别被名字吓到,HTTP 请求其实挺直白。它一般包含几个部分:请求方法、地址、协议版本,还有些附加信息。最常见的请求是 GET,用来获取网页。
GET /news.html HTTP/1.1\r\nHost: www.example.com\r\nUser-Agent: Mozilla/5.0...\r\nAccept: text/html\r\n\r\n
上面这段就是浏览器发给服务器的原始请求。虽然看起来像天书,但每一行都有用。第一行说‘我要拿 /news.html 这个文件’,第二行告诉服务器‘我是找 www.example.com 这个网站要的’,后面的则是浏览器型号、能接收什么类型的数据等信息。
HTTP 和 HTTPS 有啥区别?
现在你可能注意到,很多网址开头是 https://,多了个 S。这个 S 是 Secure,代表安全。普通的 HTTP 数据是明文传输的,就像明信片,谁经手都能看。而 HTTPS 会对数据加密,哪怕被人截获也看不懂内容。
家里用公共 Wi-Fi 时尤其要注意。如果登录网页没有 HTTPS,账号密码可能会被偷。所以现在大多数正规网站都默认用 HTTPS,浏览器地址栏还会显示一把小锁图标,表示连接是加密的。
路由器设置里能看到 HTTP 吗?
一般家庭路由器的管理界面不会直接让你改 HTTP 设置,但你在做端口转发、搭建私有网站或远程查看摄像头时,就会用到 HTTP 的默认端口——80 端口。比如你想从外面访问家里的监控页面,就得在路由器上把外部请求的 80 端口转给内网摄像头的设备。
不过现在出于安全考虑,很多人会把默认的 80 端口改成其他数字,避免被自动扫描攻击。这也说明,虽然 HTTP 本身不加密,但通过合理配置,家用场景还是能用得安心。