Before Coding [7]-URL

概述

URL的概念

URL,Uniform Resource Locator,统一资源定位符,它是一个网页的关键概念,它是浏览器使用的机制来检索Web上的任何已发布的资源。

一个网址无非是一个给定的独特的资源在网络上的地址。在理论上,每个有效的网址指向一个独特的资源。这些资源可以是一个HTML页面,一个CSS文件,图像,等等。在实践中,也有一些例外,最常见的是一个URL指向不再存在或已移动的资源。作为由Web服务器表示的资源和网址本身是由Web服务器处理的,它是由Web服务器的所有者来仔细管理该资源及其相关的网址。

URI、URL与URN

  • URI:Uniform Resource Identifier,统一资源标识符;
  • URL:Uniform Resource Locator,统一资源定位符;
  • URN:Uniform Resource Name,统一资源名称。

URL 与 URN 是 URI 的子集,它们之间的关系如下图。

URI、URL与URN

URL的组成

下面几个是简单的 URL:

http://ursb.me
http://ursb.me/archives/
http://ursb.me/archives/search?q=URL

任何这些网址可以输入到您的浏览器的地址栏,告诉它加载相关联的页面与资源。

一个网址是由不同的部分组成,一些是强制性的和还有一些是可选的。接下来通过这个 URL 距离说一下各部分的含义与作用:

http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument

协议(Protocol)

Protocol

http://是协议部分,表示浏览器使用 HTTP 协议对 URL 进行处理。当然还有其他的协议,如mailto://代表的是使用邮件客户端打开,ftp://则是使用 FTP 协议

域名(Domain Name)

Domain Name

www.example.com是一个域名,也可以使用 IP 地址。浏览器直接指向域名所在的 Web 服务器。

端口(Port)

Port

:80是端口。它表示用于访问 Web 服务器上的“gate”。通常如果 Web 服务器使用 HTTP 协议,端口可以省略(HTTP 默认 80 端口,HTTPS 默认 443 端口)。

文件路径(Path to the file)

Path to the file

/path/to/myfile.html是 Web 服务器上的资源路径。在 Web 的早期,一个像这样的路径表示 Web 服务器上的物理文件位置。如今,它主要是一个抽象的Web服务器处理,没有任何物理现实。

参数(Parameters)

Parameters

?key1=value1&key2=value2提供 Web 服务器的额外参数。这些参数是&分隔的键/值对的列表。在返回资源之前,Web 服务器可以使用这些参数做额外的工作。每个 Web 服务器都有自己的有关参数的规则,而唯一可靠的方法来知道一个特定的 Web 服务器是否处理参数是通过询问 Web 服务器所有者。

锚点(Anchor)

Anchor

#SomewhereInTheDocument叫做锚。它可以标记出以获取资源中的子资源,也就是该文档的某一个位置。

相对路径

Absolute URLs vs relative URLs

绝对地址

  • Full URL (the same as the one we used before)

    https://developer.mozilla.org/en-US/docs/Learn
    
  • Implicit protocol

    //developer.mozilla.org/en-US/docs/Learn
    

    在 HTML 的一些标签的src属性中比较常用,是一种省去协议部分的简写形式。

  • Implicit domain name

    /en-US/docs/Learn
    

    在 UNIX 系统中的文件查找中也经常用到,首部的/代表根目录。

相对地址

  • Sub-resources

    Skills/Infrastructure/Understanding_URLs
    

    因为该地址不是以/打头的,所以浏览器将试图在一个包含当前资源的子目录中找到该文档。其等价于./Skills/Infrastructure/Understanding_URLs,即在首部加上./是一样的效果。

  • Going back in the directory tree

    ../CSS/display
    

    ../在 UNIX 系统中经常用到,代表返回目前位置的上层目录。

相对 URL 的解析方式

首先先明确两个概念:相对 URL基础 URL

  • 相对 URL:不完整的 URL。
  • 基础 URL:必须要有一个参考点的 URL。

相对 URL 的解析具体分为以下两步:

  1. 找到基础 URL


  1. 将相对URL转换成绝对URL


原文:《URL》(From 《Before Coding》

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,810评论 19 139
  • (原话)谈谈对HTTP协议的理解:超文本传输协议,应用于OSI网络模型中的应用层,是用于服务器传输超文本到本地浏览...
    24_yu阅读 4,421评论 0 1
  • 1. 网络基础TCP/IP HTTP基于TCP/IP协议族,HTTP属于它内部的一个子集。 把互联网相关联的协议集...
    yozosann阅读 8,769评论 0 20
  • (本文参考课本是《HTTP权威指南》,文中的书写结构是根据自己的阅读理解的个人思路,如有不懂可以自行参考原书) 第...
    Andrew_bao阅读 3,717评论 1 3
  • 认识M姑娘,是在一个机缘巧合之下,在注册某个论坛之后,因为喜欢看她的帖子,才有了更多的交流,不得不承认的是M姑娘是...
    芥蓝若梦阅读 3,762评论 0 1

友情链接更多精彩内容