原文地址:Talk like a Googler: parts of a url
作者:Matt Cutts Google反垃圾网站组的带头人
让我们来解剖一个 URL 的所有部分。我将教你,在 Google 通常所涉及的分别指 URl 的哪些不同部分 。这是一个有效的 URL,并包含很多元素:
http://video.google.co.uk:80/videoplay?docid=-7246927612831078230&hl=en#00h02m30s
以上 URL 的组成元素分解:
传输协议是:http,类似的协议还包含:https,ftp, etc。
主机或主机名:video.google.co.uk 。
子域名是:video。
域名是:google.co.uk。
顶级域名(TLD)是:uk。uk 指的是国家顶级域名(ccTLD)。比如:google.com 其中顶级域名是 com。
二级域名(SLD)是:com.uk。
端口:80,这是 web 服务器的默认端口。其他的端口也是允许的,比如:web 服务器还可以听端口8000。当端口是80 时,很多人放空不写。
路径:/videoplay。路径通常指一个文件或 web 服务器上的一个位置。如:/directory/file.html 。
以上 URL 包含参数。参数名字是 docid,参数的值是-7246927612831078230。URLs 可以有很多参数。参数以问号(?)开始,以(&)隔开。
看到了“#00h02m30s”了吗?这称为一个字符串或一个命名锚链。字符串过去通常指网页文件中的一个内部片段。在这个例子中,这个命名锚链的意思是“2分30秒后跳转到视频”。我现在想起来,Google 通过移除字符串以实现 URL 标准化。
什么是静态 URL 或动态 URL?技术上,我们认为静态 URL 指的是服务器返回一个页面时不需要进行任何数据库操作。动态 URL 指,在返回页面之前,服务器需要进行相应的运算。
一些人通过问一个问题来简单区别静态 URL和动态 URL:“这个URL 中有没有问号(?)”。如果有问号,则一般认为是动态 URL;相反,则一般是静态 URL。当然,这不是一个硬性而有效的规则。比如,http://www.wh0553.cn/26_87_zh.html (译者按) 这个URL 看起来像是静态的,但它却需要 web服务器来处理。
阅读本文的人还阅读:
URL标准化是什么意思?
如何把动态链接静态化?