URL详谈
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详谈的更多相关文章
- JS获取url中query_str JavaScript RegExp 正则表达式基础详谈
面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblogs.com/EditPosts.aspx?opt=1 1.window.location.href(设置或获取整个 URL ...
- JavaScript RegExp 基础详谈
前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果我们不去真正仔细研究.学习.掌握,而是抱着需要的时 ...
- JavaScript正则详谈
JavaScript RegExp 基础详谈 前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果 ...
- JVM 详谈
JVM 详谈 本来这次应该讲讲ORM 的几个框架,但是笔者还没有完全总结出来,所以这里先插入一次学习JVM的心得.作为一个Java程序员,如果不了解JVM的工作原理,就很难从底层去把 握Java语言和 ...
- JavaScript RegExp 正则表达式基础详谈
前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果我们不去真正仔细研究.学习.掌握,而是抱着需要的时 ...
- 基础篇:JAVA资源之IO、字符编码、URL和Spring.Resource
目录 1 JAVA.IO字节流 2 JAVA.IO字符流 3 乱码问题和字符流 4 字符集和字符编码的概念区分 5 URI概念的简单介绍 6 URL概念及与URL的区别 7 Spring.Resour ...
- HTML URL地址解析
通过JavaScript的location对象,可获取URL中的协议.主机名.端口.锚点.查询参数等信息. 示例 URL:http://www.akmsg.com/WebDemo/URLParsing ...
- URL安全的Base64编码
Base64编码可用于在HTTP环境下传递较长的标识信息.在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式.此时,采用Base64编码不仅比较简短,同时也具有不可 ...
- Android业务组件化之URL Scheme使用
前言: 最近公司业务发展迅速,单一的项目工程不再适合公司发展需要,所以开始推进公司APP业务组件化,很荣幸自己能够牵头做这件事,经过研究实现组件化的通信方案通过URL Scheme,所以想着现在还是在 ...
随机推荐
- cesium调用天地图服务
全球矢量地图服务 var viewer = new Cesium.Viewer("cesiumContainer", { animation: false, //是否显示动画控件 ...
- 经验解决Fragment被Replace后仍旧可见的问题
经验解决Fragment被Replace后仍旧可见的问题 网上问的问题,大多会提到替换了Fragment而发现之前被替换的仍旧显示在那里.我个人使用android 2.3 +support 开发包,在 ...
- 配置NGReport 报告中文
1. 测试报告的名称 在测试开始或测试监听器的类中加上下面一句代码即可: System.setProperty("org.uncommons.reportng.title", &q ...
- java 多线程4(死锁)
死锁现象: 死锁原因: 1.存在两个或两个以上的线程. 2.存在两个或两个或两个以上的共享资源. 死锁现象解决的方案: 没有方案只能尽量避免.
- Unity 5 中的全局光照技术详解(建议收藏)
本文整理自Unity全球官方网站,原文:UNITY 5 - LIGHTING AND RENDERING (文章较长,请耐心阅读)简介全局光照,简称GI,是一个用来模拟光的互动和反弹等复杂行为的算法, ...
- 【bzoj1018】堵塞的交通
[bzoj1018]堵塞的交通 题意 一个\(2*n\)的格子,相邻格子之间有一条道路.初始时道路是不通的. \(C\)个操作,每个操作为三种中的一种:(1)某条道路连起来:(2)某条道路断开:(3) ...
- [saiku] 源码整合[maven整合]
saiku源码的整合分为[普通web项目整合]和[maven整合]两种 本节主要是讲解如何整合为maven项目 转载自:http://blog.csdn.net/gsying1474/article/ ...
- Qt之findChild
简述 在Qt编程过程中,通常会有多个部件嵌套,而大多数部件都有父子依赖关系,但是有些情况下不能直接引用子部件,这时我们可以通过父部件来findChild -"查找孩子". 简述 查 ...
- 50 个最棒的 jQuery 日历插件,很齐全了!(转)
http://www.php100.com/html/it/qianduan/2015/0326/8856.html 什么介绍都没有,直接上酸菜! 1. Even Touch Calendar 2. ...
- css中的zoom
CSS中zoom:1的作用兼容IE6.IE7.IE8浏览器,经常会遇到一些问题,可以使用zoom:1来解决,有如下作用:触发IE浏览器的haslayout解决ie下的浮动,margin重叠等一些问题. ...