准备第一个网站时,你会在教程、主机面板和协作者对话中同时遇到「域名」和「URL」这两个概念。它们看起来相似,但回答的是关于地址的不同问题。本文用一个假设示例展示域名在哪里结束、完整URL从哪里开始,帮助你在上线前清晰地读懂和描述自己的网站地址。

域名与完整URL分别回答什么问题

假设你正在规划一个小型个人项目站,并为笔记板块草拟了一个页面地址:https://example.org/notes/first-page?view=compact#intro。这是一个纯粹用于拆解演示的假设字符串,并不指向任何真实页面,也没有在任何地方注册或发布。第一次看到它时,你可能会疑惑哪一部分是域名、哪一部分是URL,以及这种区分对上线准备是否真的有意义。

域名是互联网上任何可用Web服务器的人类可读地址。计算机通过数字形式的IP地址定位服务器,但人们很难记住这些数字,因此域名充当了便于记忆的标签,用来标识你想访问的是哪台服务器。在我们的示例中,example.org就是域名,它回答的问题是:浏览器应该联系哪台服务器?1

URL是统一资源定位符的缩写,它是互联网上某个唯一资源的地址,也是浏览器用来获取已发布资源(如HTML页面、图片或样式表)的关键机制之一。完整的字符串 https://example.org/notes/first-page?view=compact#intro 就是一个URL。它回答的问题比域名更具体:应该加载该服务器上的哪个特定资源,以及在什么条件下加载?域名是URL内部的一个组成部分,但URL还携带了关于协议、路径、可选参数和可选锚点的信息。2

逐段标注示例地址的各部分

让我们逐段拆解这个假设地址。方案部分是https,它告诉浏览器在请求资源时应使用哪种协议。对于网站而言,协议通常是HTTPS或其未加密版本HTTP。方案始终位于最前面,后面紧跟分隔符://,然后才是下一个组成部分。2

分隔符之后的部分是主机名,在我们的示例中是example.org,也就是域名部分。域名由若干个以点号分隔的部分组成,从右向左阅读。最右边的标签是顶级域名,即TLD,它向用户提示该域名背后服务的一般用途或类别。在example.org中,TLD是org;它左边的标签example是二级域名。两者合在一起构成了标识服务器的主机名。13

主机名之后是路径:/notes/first-page。路径指向Web服务器上的某个资源。在早期互联网中,路径代表服务器上的物理文件位置,但如今它大多是Web服务器处理的一种抽象,并不对应真实的物理文件。你可以把它理解为指定站点内的哪个页面或文档。问号?引出查询字符串。在我们的示例中,view=compact是一个由键和值组成的参数。参数是提供给Web服务器的额外信息,每台服务器对参数的处理规则各不相同。最后,井号#引出片段标识符。这里的intro是片段,它的作用类似于资源内部的书签,告诉浏览器显示位于该位置的内容。片段不会随请求一起发送到服务器。2

相同主机、不同路径与查询

现在保持主机名example.org不变,设想两个变体。第一个是 https://example.org/notes/second-page?view=full#intro,第二个是 https://example.org/notes/first-page?view=full。在这两种情况下,域名和方案与原始示例完全相同,因此浏览器会联系同一台服务器。不同的是第一个变体中的路径,以及第二个变体中的查询参数。

将原始的 https://example.org/notes/first-page?view=compact#intro 与第一个变体对比,只有路径段从first-page变成了second-page,这意味着笔记区域内的不同文档或章节。将原始地址与第二个变体对比,路径保持不变,但查询值从compact变成了full,这会向服务器传递不同的参数,可能改变资源的呈现方式。我们在这里观察的是字符串结构本身,而不是预测某台特定服务器实际会返回什么,因为每台服务器按照自己的规则处理参数。2

这个练习表明,仅凭域名无法判断你具体会看到哪个页面或哪种配置。共享同一域名的两个URL可以指向完全不同的资源或显示模式。当你规划自己的站点时,认清这一区别有助于你在与协作者沟通、编写文档或排查链接无法加载预期页面的问题时精确地描述地址。

为假设项目制作地址说明卡

记录项目中每个重要地址的简短说明卡。对于我们的假设笔记页面,说明卡可以包含四行。第一行写明用途:笔记首页的紧凑视图,锚定到引言部分。第二行原样记录完整URL。第三行单独列出域名,以便核实它与你注册的名称一致。第四行注明你有意选择的路径和参数。

这张卡片是个人组织工具,不是技术要求。它的价值在于让你的选择变得明确。如果之后你更改了路径结构或决定去掉片段,可以将新地址与卡片对比,立即看出哪些地方发生了变化。对于单人项目来说这可能显得多余,但哪怕每个地址只记一行,也能省去几周后重新回忆当初思路的麻烦。

把说明卡存放在你已有的项目笔记格式中:纯文本文件、电子表格的一行,或文档工具里的一条记录都可以。重要的是完整URL必须逐字符精确复制,而不是转述或缩写。「带紧凑视图的笔记页」这样的描述作为标签有用,但在你需要测试或分享地址时无法替代精确字符串。

手工核对说明卡

检查说明卡与实际地址字符串是否一致:从浏览器地址栏或配置文件中复制URL,粘贴到卡片旁边。然后逐段手动标注:标记方案在哪里结束、主机从哪里开始和结束、路径从哪里起始、是否存在问号、是否出现了井号。这种手动标注只需片刻,但能发现常见错误,比如主机后面漏掉斜杠,或者参数值被意外截断。

当你从协作者或工具导出处收到一个地址时,也使用同样的标注流程。把它粘贴到空白行,标出方案、主机、路径、查询和片段之间的边界,然后将结果与发送者的描述对比。如果片段存在但发送者没有提及,你现在就知道应该询问这是否是有意为之。如果查询字符串中包含你没有预期的参数,你可以在地址进入正式链接之前提出疑问。

这些核对步骤是普通的作者建议,并非来自任何规范的要求。它们之所以有效,是因为URL结构遵循一致的模式:方案总是在最前面,主机紧跟在://分隔符之后,路径跟在主机后面,问号引出参数,井号引出片段。一旦你熟悉了这些边界,在长地址中发现错误就变成一次快速的视觉扫描,而不是猜测。2

保留地址记录供日后参考

说明卡写好并核对完毕后,把它们存放在你发布前确实会重新查看的地方。许多首次建站者在规划阶段创建了这些笔记,一旦开始撰写内容就把它们搁置了。项目自述文件中的专门章节、置顶笔记或站点仓库里的一个简单文本文件都是可行的存放位置。目标是当你或协作者需要精确地址时,不必打开浏览器翻找历史记录就能找到它。

如果项目增长到包含多个页面,每个页面都有自己的路径和可能的参数,可以考虑用一张表格列出它们,列包括用途、完整URL以及关于有意选择的备注。这不是技术义务,而是沟通辅助工具。当有人问「紧凑视图笔记页的地址是什么」时,你可以指向其中一行,而不必凭记忆重新拼凑答案。

随着时间推移,你的地址结构可能因内容重组或路径简化而改变。发生时,更新说明卡以反映当前状态,并注明变更日期。保留简短的变更记录有助于你理解为什么旧书签或已分享的链接不再有效。记录、核对和更新这一实践非常轻量,它把URL的抽象结构变成了你可以掌控的具体参考。

常见问题

域名和URL是同一个东西吗?

不是。域名标识的是服务器,而URL是完整地址,还包含方案、路径以及可选的参数和片段。域名是URL内部的一个组成部分。12

井号后面的片段部分会发送到服务器吗?

不会。片段标识符出现在井号之后,它的作用是资源内部的书签,告诉浏览器滚动或定位到哪个位置,但不会随请求一起发送到服务器。2

两个不同的URL可以共享同一个域名吗?

可以。域名标识的是服务器,但同一域名下不同的路径、参数或片段可以指向不同的资源或显示模式。每种唯一组合都产生一个不同的URL。2