游客发表
打开浏览器,查看网站在地址栏敲下几个字母,查看网站回车——这事儿谁都会。查看网站但“查看网站”远不止输入网址这么简单。查看网站我见过太多人,查看网站包括几年前的查看网站我,以为网站就是查看网站屏幕上那个花花绿绿的页面,关掉标签页它就消失了。查看网站其实网站是查看网站活的,藏在页面背后的查看网站东西比表面多得多。
先说说最基础的查看网站。你输入网址,查看网站浏览器向服务器发出请求,查看网站服务器返回一堆代码——HTML、查看网站CSS、查看网站JavaScript,浏览器把它们渲染成你看到的页面。这个过程通常不到一秒,但中间经过的环节能写满一本书。拿我常逛的一个独立博客举例,作者住在挪威,服务器租在德国,域名注册在美国。我点开一篇文章,数据可能绕了大半个地球才出现在我屏幕上。想想挺有意思。
想看一个网站“真实的样子”,得学会用开发者工具。Chrome里按F12,或者右键选“检查”,页面右侧会弹出一堆面板。Elements标签展示的是DOM树,也就是浏览器解析后的页面结构。你看到的一行行彩色代码,就是网页的骨架。我刚开始用的时候,把某个按钮的display: none;改成display: block;,页面上立刻多出个东西——那种感觉像发现了暗门。Network面板更有意思,刷新页面,它会列出所有加载的资源:图片、脚本、字体、追踪器。有些网站加载了十几个分析工具,你还没点任何东西,数据已经发回服务器了。
还有一种“查看”是看网站的历史。互联网档案馆的Wayback Machine存了上亿个网页的快照。我查过一个2003年的个人主页,背景是闪烁的星星GIF,留言本里全是“踩踩”“回访”。跟现在比,那时候的网站简陋得可爱。但那些快照也提醒我,很多链接已经死了,域名被抢注,内容永远消失。网站不是永恒的石碑,更像沙滩上的字,潮水一来就没了。
如果你想知道一个网站的技术栈,有个办法是看它的HTTP响应头。在开发者工具的Network里点第一个请求,找Response Headers。Server字段有时会写nginx还是Apache,X-Powered-By可能暴露PHP版本。当然很多网站会藏起来,但藏本身也是信息。我有个朋友做安全测试,他说看响应头就像看一个人穿什么鞋——不一定准,但能猜出点职业习惯。
移动端查看又是另一回事。手机浏览器和桌面浏览器请求的可能是完全不同的页面。有些网站用响应式设计,一套代码适配所有屏幕;有些则单独做m站,功能阉割得厉害。我试过用手机看某个政府网站,表格挤成一团,按钮点不到。换桌面模式才勉强能用。这种体验背后是开发者的选择,或者说是偷懒。
最后说个偏门的:查看网站的robots.txt。在域名后面加上/robots.txt,你会看到网站告诉爬虫哪些目录不能抓。有些网站会在这里泄露后台路径,比如/admin/,虽然不一定能访问,但至少知道有这么个地方。我靠这个找到过几个公开的测试环境,里面数据都没删干净。当然,看到归看到,别乱动。
说到底,查看网站是个手艺活。表面看是眼睛在动,实际是脑子在问:这东西怎么跑起来的?谁做的?为什么这么做?下次你打开一个网页,不妨按个F12,或者去Wayback Machine搜搜它的过去。你会发现,每个网站都是一座冰山,你平时看到的,只是水面上那一角。
友情链接