URL(Uniform Resource Locator,统一资源定位符)是地址的别名。它包含关于文件存储位置和浏览器应如何处理它的信息。互联网上的每个文件都有唯一的 URL。

URL 的第一个部分称为模式(scheme)。模式告诉浏览器如何处理需要打开的文件。最 常 见 的 模 式 是 HTTP(Hypertext TransferProtocol,超文本传输协议)。根据你上网的经验,你应该可以猜到,HTTP 是用于访问网页的。HTTPS 是从 HTTP 衍生来的,用于电子商务网站等安全网页。它的格式同 HTTP 一样,只是用 https 替代了 http。

URL的第二个部分是文件所在的主机的名称,紧接着是路径,路径包含到达这个文件的文件夹以及文件自身的名称。如果 A 中的路径是 tofu/soft/index.html,就表示 index.html 位于 soft 目录,而soft 目录则位于 tofu 目录,就像你在自己的电脑上组织文件和文件夹那样。

有时,URL路径不以文件名结尾,而以一个目录结尾(可以包含一个结尾的斜杠,也可以不包含)。在这种情况下,URL值得是路径中最后一个目录中的默认文件,通常为index.html。(通常情况下,所有Web服务器的配置豆浆index.html作为默认文件名,因此你不必修改任何服务器配置。)

其他常见的模式有用于下载文件的ftp(File Transfer Protocol,文件传输协议)。用于发送电子邮件的mailto。

模式后面通常紧跟着一个冒号和两个斜杠。mailto是个例外,它后面只有一个冒号。

  在上述模式中,最常用的是http(也包括https),其次是mailto,再次是ftp。其他模式则只有在特殊情况下才会用到,你很少碰到它们。

1.绝对URL

  URL可以是绝对的,也可以是相对的。绝对URL(absolute URL)包含了指向目录或文件的完整信息,包括模式、主机名和路径。绝对URL就像是完整的通信地址,包括国家、州、城市、邮政编码、街道和姓名。无论邮件来自哪里,邮局都能找到收件人。就URL来说,这意味着绝对URL本身与被引用文件的实际位置无关,无论是在哪个主机上的网页中,某一文件的绝对URL都是完全一样的。

  引用别人Web服务器上的文件时,应该总是使用绝对URL。当你通过电子邮件跟你的朋友分享新闻时,如果只给他们URL的一部分,他们就无法看到相应的内容。

2.相对URL

  相对URL以包含URL本身的文件的位置为参照点,描述目标文件的位置。

◎引用同一目录下的文件

  如果目标文件与当前页面(也就是包含URL的页面)在用一个目录中,你们这个文件的相对URL就只有文件名和扩展名。

◎引用子目录下的文件

  如果目标文件在当前目录的子目录中,你们这个文件的相对URL就是子目录名,接着是一个斜杠,然后是文件名和扩展名。

◎引用上层目录的文件

  如果要引用文件层次结构中更上层目录中的文件,那么应该使用两个句点和一个斜杠。每个 ../ 都表示“到当前文件的上一层”,因此, ../../会向上走两级, ../../../ 会向上走三级。

◎根相对URL

  在最开始使用一个斜杠,这样本例中的根相对URL就是 /img/family/vacation.jpg(假定 img 文件夹位于网站的根文件夹, 这也是惯常的用法)。需要强调的是,这种做法只能用于Web服务器,例如在网站托管服务供应商的Web服务器上,或者在本地计算机运行的Web服务器上。

如果不是在服务器本地开发网站,通常应使用相对URL(当然,除非是指向其他服务器上的文件)。这样确保了将页面从本地系统传到服务器变得容易。只要每个文件的相对位置保持不变,就不必修改任何路径,连接依然有效。

3.绝对URL和相对URL的比较

URL详谈的更多相关文章

  1. JS获取url中query_str JavaScript RegExp 正则表达式基础详谈

    面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblogs.com/EditPosts.aspx?opt=1 1.window.location.href(设置或获取整个 URL ...

  2. JavaScript RegExp 基础详谈

    前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果我们不去真正仔细研究.学习.掌握,而是抱着需要的时 ...

  3. JavaScript正则详谈

    JavaScript RegExp 基础详谈   前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果 ...

  4. JVM 详谈

    JVM 详谈 本来这次应该讲讲ORM 的几个框架,但是笔者还没有完全总结出来,所以这里先插入一次学习JVM的心得.作为一个Java程序员,如果不了解JVM的工作原理,就很难从底层去把 握Java语言和 ...

  5. JavaScript RegExp 正则表达式基础详谈

    前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果我们不去真正仔细研究.学习.掌握,而是抱着需要的时 ...

  6. 基础篇:JAVA资源之IO、字符编码、URL和Spring.Resource

    目录 1 JAVA.IO字节流 2 JAVA.IO字符流 3 乱码问题和字符流 4 字符集和字符编码的概念区分 5 URI概念的简单介绍 6 URL概念及与URL的区别 7 Spring.Resour ...

  7. HTML URL地址解析

    通过JavaScript的location对象,可获取URL中的协议.主机名.端口.锚点.查询参数等信息. 示例 URL:http://www.akmsg.com/WebDemo/URLParsing ...

  8. URL安全的Base64编码

    Base64编码可用于在HTTP环境下传递较长的标识信息.在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式.此时,采用Base64编码不仅比较简短,同时也具有不可 ...

  9. Android业务组件化之URL Scheme使用

    前言: 最近公司业务发展迅速,单一的项目工程不再适合公司发展需要,所以开始推进公司APP业务组件化,很荣幸自己能够牵头做这件事,经过研究实现组件化的通信方案通过URL Scheme,所以想着现在还是在 ...

随机推荐

  1. OpenCV3编程入门笔记(5)重要章节小节及核心函数

  2. VC++多工程项目

    目录 第1章 VC++6.0    1 1.1 设置依赖关系    1 1.2 编译顺序    2 1.3 自动连接    3 1.4 静态库    3 1.4.1 嵌入    3 1.4.2 替换  ...

  3. LaTeX内容总结

    欢迎关注我的社交账号: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://gith ...

  4. require.js学习笔记(内容属于转载总结)

    <script data-main="src/app" src="src/lib/require.js"></script> backb ...

  5. hdu 2570

    贪心的经典题型 该死的精度问题,WA了好几次,以后能用乘的绝不用除!! #include<iostream> #include<algorithm> #include<c ...

  6. jmeter 建立一个监控测试计划

    监控 压力测试和系统管理是有用的. 使用压力 测试,服务器性能监控提供了额外的信息. 这也使得它更容易看到服务器性能之间的关系 在客户端和响应时间. 作为一个系统管理工具, 监控提供了一种简单的方法来 ...

  7. [saiku] 免登陆进入管理后台

    上一篇分析了介绍了如何简化和修改saiku的界面[http://www.cnblogs.com/avivaye/p/4877882.html] 这一篇说明下如何去掉免登陆进入saiku 管理台 1.修 ...

  8. android入门之: SharedPreferences

    读取数据: 保存数据: +++++++++++++++++++方法详解++++++++++++++++++++++++++++++ SharedPreferences综述: 使用getSharedPr ...

  9. JavaSE基础之this关键字的引用

    1.0   this 指代当前对象, 在一般方法中可以通过this来引用当前对象的成员(方法,属性). 2.0  通过  this()  调 用重载的构造器,需要注意的是,通过此种方法调用的重载构造器 ...

  10. Neo4j图数据库简介和底层原理

    现实中很多数据都是用图来表达的,比如社交网络中人与人的关系.地图数据.或是基因信息等等.RDBMS并不适合表达这类数据,而且由于海量数据的存在,让其显得捉襟见肘.NoSQL数据库的兴起,很好地解决了海 ...