中英文泡椒 发表于 前天 17:12

网址开头那两个斜杠 //,其实没有实际功能?

每天在地址栏敲https://,你有没有想过,中间那俩斜杠到底图什么?

真相挺反常识:这两个斜杠基本没有实际功能,连发明者本人都承认是个错误。

1990年,蒂姆·伯纳斯·李在CERN那台NeXT电脑上折腾万维网,顺手定下了网址的写法。他当时想借用大家眼熟的形式,

于是在协议名后面加了冒号,又加了//表示“后面跟着的是主机地址”。



问题在于,冒号本身已经把协议和后面的内容分开了,再塞两个斜杠纯属重复。2009年10月,他在华盛顿的一次活动上

亲口认账,说双斜杠“既没意义也没必要”,是他唯一想改掉的设计。据公开资料,他当时还算了笔账:这些年人类为敲

这两个多余的斜杠,浪费了大量时间和纸张。

得说清楚,没用的是那两个“固定前缀”,不是斜杠这个字符。



单个斜杠在网址里干的是正经活——标示层级,/blog/url-structure这种路径全靠它分段。后来的标准把//正式定义为“权

威组件(authority)”的开头,RFC1738、RFC2396一路写到RFC3986。换句话说,它本来可有可无,可一旦写进标准、

被全世界的浏览器和服务器实现,就再也摘不掉了。这就是典型的历史包袱:不是改不动技术,是改不动已经跑在地球

上的几十亿设备。

有意思的是它歪打正着留下个用法——以//开头的“协议相对地址”,能让浏览器自动沿用当前是http还是https。早些年做

网站运维,http往https迁移那阵子,不少人还特意这么写来兼容两种情况。

如今你在Chrome、Edge里根本看不见这俩斜杠,浏览器早就默认把它藏了,只在你点进地址栏编辑时才露出来。手机上

更是连www都懒得显示。厂商用这种方式默默给当年的设计打了补丁。

页: [1]
查看完整版本: 网址开头那两个斜杠 //,其实没有实际功能?