联系支持

我们通过电子邮件回复,通常两天内。

为防止滥用,Google reCAPTCHA 会检查这次提交,其间会向 Google 传输数据。脚本只在此表单打开时才加载。

← 全部文章

十年后计数器仍在运行

数不清的网站在很多年前放上了一个访客计数器,之后就再也没有动过那段代码。这十年里网页技术变了很多,但一个简单的 HTML 图片标签,直到今天仍然处处都能用。

这十年里,底下有三样东西变了,每一样都在什么地方弄坏过东西。连接换成了加密,手机取代台式机成了通常的阅读设备,几乎每一个商业站点上都冒出了同意横幅。而一次图片请求,这三样一样也没有察觉到。

加密是那件本来可能让计数器停下来的事,有时也确实让它停了。一个通过安全连接送出的页面,如果去加载一张走非安全连接的图片,要么弹出警告,要么干脆把图片丢掉。今天还在跑的那些计数器,正是图片地址也一起换成了安全形式的那些。

20162026嵌上一次一直在数手机上网和隐私法都变了;请求一张图片没有变

同一个十年里,什么停了下来

在手机浏览成为主流、隐私法规不断收紧的同时,一个纯粹靠图片计数的机制并不受这些变动影响。当初那套计数办法,不需要任何脚本更新就能继续工作。

停下来的东西其实不少。留言簿需要一个数据库,还需要有人盯着。写成小程序的计数器需要一套运行环境,而服务器后来不再提供它了。那些关掉的服务留下的挂件,只剩下一个空白的方框。一次图片请求没有运行环境,没有函数库,背后也没有一家可以把它撤走的公司。

当地址变了

当一个网站最终搬到新的域名,或者换成一套现代的内容管理系统时,只要把一模一样的那段代码原样带过去,记录下来的历史就会保留下来。十年积攒的东西完好无损地留着,中间没有任何技术上的摩擦。

搬家之后真正会出的毛病,比一个坏掉的计数器要安静得多。总数照旧往上走,而且走得没错,但统计页上写的还是旧域名——因为域名是在每一次访问到达的那一刻被记下来的。什么也没丢,只是那个标签过时了。

这个区别值得记住。数字挂在图片标签里的那个编号上,不挂在它周围的域名上。一个错的标签配一个对的数字,只是不方便;而编号被改掉才是真正的损失,也正是搬家唯一不能碰的东西。

实际上,搬完家之后只剩一项检查:打开页面,再单独打开那个图片地址,看图片有没有到。到了,总数就是完好的。没到,说明地址在搬迁途中某处被改写过,而旧的那个还在,可以拿回来。

还在跑,这本身就是那项特性

过了十年,这句话就不再谦虚了。一个这个年纪的站点,当初用来搭建它的东西大多至少换过一遍——服务器软件、数据库,往往还有整套发布系统。一个从头到尾没改过一个字、却把这一切都熬过来的机制,配得上这样的描述。计数器值得一提,不是因为它会数,而是因为从来没人需要对它做点什么。

广告