附录 A URI 方案

已定义的 URI 方案有很多,但常用的并不多。一般来说,有相关的 RFC 对其解释说明的 URI 方案更常用一些,但确实也有少数由主导软件公司(特别是 Netscape 和 Microsoft)开发,但未被正式发布的方案得到了广泛应用。

W3C 维护了一个 URI 方案列表,可以通过以下地址访问:

http://www.w3.org/Addressing/schemes.html

IANA 也维护了一个 URL 方案的列表,网址是:

http://www.iana.org/assignments/uri-schemes

表 A-1 介绍了部分已经提出的和正在使用的方案。注意,表中大约有 90 个方案,其中很多都没有得到广泛应用,而且有些已被废弃。

表A-1 在W3C注册的URI方案

方  案 描  述 RFC
about 研究浏览器各方面特性的 Netscape 方案。比如说,使用 about 自身的效果就跟选择 Navigator 的 Help 菜单中的 About Communicator 一样,about:cache 显示的就是磁盘缓存的统计数据,about:plugins 显示的是与已配置的插件有关的信息。其他浏览器,比如微软的 Internet Explorer,也使用了这个方案
acap 应用程序配置访问协议 2244
afp 用于使用 AFP(Apple Filing Protocol,苹果文件协议)提供的文件共享服务,是作为已过期的 IETF draft-ietf-svrloc-afp-service-01.txt 的一部分定义的
afs 保留,以备 Andrew 文件系统将来使用
callto 初始化微软的 NetMeeting 会议的会话,比如:callto:ws3.joeshardware.com/joe@joes-hardware.com
chttp Real 网络公司定义的 CHTTP 缓存协议。RealPlayer 没有缓存 HTTP 传输的所有条目。作为一种替代方式,可以在文件的 URL 中使用 chttp:// 代替 http:// 来说明要缓存的文件。RealPlayer 在 SMIL 文件中读到 CHTTP URL 时,首先会查看磁盘的缓存中是否有该文件。如果没有此文件,就通过 HTTP 请求此文件,并将其存储在自己的缓存中
cid 在电子邮件中通过[MIME] 传送 Web 页面及其相关图片时,需要一个 URL 方案允许 HTML 引用报文中所含图片或其他数据 Content-ID URL,即cid,就用于这个目的 2392 2111
clsid 允许引用微软的 OLE/COM 类。用于向 Web 页面中插入活动对象
data 允许将一些小的常量数据条目作为“即时”数据包含在内。这个 URL 会将 text/plain 字符串 A brief note 编码为:data:A%20 brief%20note 2397
date 支持日期的方案建议,比如date:1999-03-04T20:42:08
dav 为了确保基于此规范的互操作的正确性,IANA 必须保留以 DAV: 和 opaquelocktoken: 开头的 URI 名字空间,供这个规范和它的修订版本以及相关的 WebDAV 规范使用 2518
dns 供 REBOL 软件使用。 参见 http://www.rebol.com/users/valurl.html
eid 外部 ID 方案提供了一种机制,本地应用程序可以通过这种机制引用通过其他非URL 方案获取的数据。这个方案试图提供一种通用的转义机制,以便那些无法提出自己方案的专业应用程序访问信息。这个 URI 的使用方式存在争议。参见 http://www.ics.uci.edu/pub/ietf/uri/draft-finseth-url-00.txt
fax 方案 fax 描述了一条连接,此连接连至可处理电传的终端(传真机) 2806
file 在特定主机上标识出可访问的文件。其中可以包含主机名,但这个方案的特殊性在于它没有为此类文件指定因特网协议或访问方式;这样,它在主机间网络协议中的效用就会受到限制 1738
finger finger URL 的格式如下:finger://host[:port][/<request>]。 <request> 必须与RFC 1288 的请求格式一致。参见http://www.ics.uci.edu/pub/ietf/uri/draft-ietf-uri-url-finger-03.txt
freenet 获取中迅互联分布式信息系统中信息所用的URI。参见http://freenet.sourceforge.netLink text
ftp 文件传输协议方案 1738
gopher 古老的 gopher 协议 1738
gsm-sms 用于 GSM 移动电话短信业务的 URI。
h323,h324 多媒体会议的 URI 方案。 参见http://www.ics.uci.edu/pub/ietf/uri/draft-cordell-sg16-conv-url-00.txt
hdl Handle 是个被广泛应用的系统,用于分配、管理数字对象和因特网上的其他资源,并将其解析成名为 handles 的永久标识符。可以将 handle 作为 URN 使用。参见http://www.handle.net
hnews HNEWS 是 NNTP 新闻协议的一个 HTTP 隧道变体。hnews URL 语法设计与当前常用的新闻URL 方案兼容。参见http://www.ics.uci.edu/pub/ietf/uri/draft-stockwell-hnews-url-00.txt
http HTTP 协议。更多信息请参见本书 2616
https SSL 上的HTTP。 参见http://sitesearch.netscape.com/eng/ssl3/draft302.txt
iioploc CORBA 扩展。可互操作的名字服务定义了一种 URL 格式的对象引用——iioploc,可以将其输入一个程序中,以获取包括名字服务在内的已定义远程服务。比如,以下 iioploc 标识符: iioploc://www.omg.org/NameService 就表示运行在 IP 地址与域名 www.omg.org 相对应的机器上的 CORBA 名字服务。参见http://www.omg.org
ilu ILU(Inter-Language Unification,跨语言统一)系统是一个多语言对象接口系统。ILU 提供的对象接口隐藏了不同语言、不同地址空间和不同操作系统之间的实现差异。可以通过ILU,用经过良好说明的语言无关接口来构建多语言的面向对象库(类库)。还可以将其用于实现分布式系统。 参见ftp://parcftp.parc.xerox.com/pub/ilu/ilu.html
imap IMAP URL 方案用于分配 IMAP 服务器、邮箱、报文、MIME 主体[MIME],在因特网主机上搜索可以通过 IMAP 协议访问的程序 2192
IOR CORBA 的互操作对象引用。 请参见http://www.omg.org
irc irc URL 方案用于表示IRC(Internet Relay Chat,因特网中继聊天)服务器或者 IRC 服务器上的独立实体(信道或人)。 参见http://www.w3.org/Addressing/draft-mirashi-url-irc-01.txt
isbn 建议用于 ISBN 书籍参考的方案。 参见http://lists.w3.org/Archives/Public/www-talk/1991NovDec/0008.html
java 用来识别 Java 类
javascript 网景的浏览器会处理 javascript URL,如果冒号( :)后面有表达式,则计算它的值,只要表达式字符串的值不是未定义的,就会加载包含了这个值的页面
jdbc 用于 Java SQL API
lda 允许因特网客户端直接访问 LDAP 协议 2255
lid 本地标识符方案。 参见 draft-blackketter-lid-00
lifn UTK 开发的批量文件分发分布式存储系统所使用的lifn(locationindependent file name,位置无关文件名)
livescript JavaScript 的曾用名
lrq 参见h323
mailto URL 方案 mailto 用于访问单个用户或服务的因特网邮件地址 2368
mailserver 1994 ~ 1995 年的老建议,支持将整条报文都编码到一个 URL 中去,这样(比如说)URL 可以自动向邮件服务器发送订阅邮件列表的电子邮件了
md5 MD5 是一种密码校验和
mid mid 方案用电子邮件报文的message-id(一部分)来引用一个特定的报文 2392 2111
mocha 参见javascript
modem modem 方案描述了一条连接,连接到能够处理输入数据呼叫的终端上去 2806
mms、mmst、mmsu MMS(Microsoft Media Server,微软媒体服务器)以流方式传送 ASF(Active Streaming Format,活动流格式)文件时使用的方案。强制使用 UDP 传输时,使用 mmsu 方案。强制使用 TCP 传输时,使用 mmst 方案
news news URL 方案指的是 USENET 新闻中的新闻组,或独立的文章。 news URL 使用下列两种格式之一: news:<newsgroup-name> 或news:<message-id> 1738 1036
nfs 指的是 NFS 服务器上的文件和目录 2224
nntp 另一种引用 news 文章的方法,指定 NNTP 服务器上的 news 文章时很有用。nntp URL 看起来如下所示: nntp://<host>:<port>/<newsgroup-name>/<article-num> 注意,尽管 nntp URL 为文章资源指定了唯一的位置信息,但现在因特网上大部分 NNTP 服务器都配置为只允许从本地客户端访问,nntp URL 因此就无法指定全球可访问的资源了。因此,URL 的 news 格式更常作为识别新闻性文章的一种方式 1738 977
opaquelocktoken 以 URI 形式表示的 WebDAV 锁定令牌,用于标识特定锁的。每个成功的 LOCK 操作都会在响应主体的 lockdiscovery 特性中返回锁定令牌,也可以通过资源的锁发现操作找到它。参见 RFC 2518
path path 方案定义了一个统一的层次化命名空间。在这个空间中,path URN 就是由一些组件和可选的不透明字符串组成的序列。 参见http://www.hypernews.org/~liberte/www/path.html
phone 在“电话的URL”中使用。在 RFC 2806 中被 tel: 取代
pop POP URL 指定了一个 POP 电子邮件服务器,一个可选的端口号、认证机制、认证 ID 和 / 或授权 ID 2384
pnm Real 网络公司的流媒体协议
pop3 POP3 URL 方案允许 URL 指定一个 POP3 服务器,允许其他协议使用通用的“用于邮件访问的URL”取代对 POP3 的显式引用。在已过期的 draft-earhart-url-pop3-00.txt 中定义
printer 用于服务定位标准的抽象URL。 参见draft-ietf-srvloc-printer-scheme-02.txt
prospero 通过 prospero 目录服务访问的名字资源 1738
res 微软的方案,指定了一个要从某模块中获取的资源。包含一个字符串或数字资源类型和一个字符串或数字 ID
rtsp 实时流协议,是 Real 网络公司现代流媒体控制协议的基础协议 2326
rvp RVP 集合点协议的URL,用于在某计算机网络上发布用户到来的通知。参见draft-calsyn-rvp-01
rwhois RWhois 是在 RFC 1714 和 RFC 2167 中定义的因特网目录访问协议。RWhois URL 将 rwhois 的直接访问权赋予了客户端。 参见http://www.rwhois.net/rwhois/docs/
rx 一种结构,允许远程图像应用程序在 Web 页面中显示数据。 参见http://www.w3.org/People/danield/papers/mobgui/
sdp sdp(session description protocol,会话描述协议)URL。参见 RFC 2327
service service 方案可以为任意网络服务提供访问信息。这些 URL 为基于客户端的网络软件提供了一种可扩展的框架,以获取使用网络服务所需的配置信息 2609
sip sip* 族方案用于建立使用sip(session initiation protocol,会话发起协议)的多媒体会议 2543
shttp S-HTTP 是 HTTP 的超集,用于保护 HTTP 连接,它提供了大量机制用以实现保密性、认证功能和完整性。S-HTTP 没有被广泛采用,主要是被HTTPS(经过 SSL 加密的HTTP)取代了。 参见http://www.homeport.org/~adam/shttp.html
snews 经 SSL 加密的 news
STANF 用于可靠网络文件名的老建议。与 URN 有关。 参见http://Web3.w3.org/Addressing/#STANF
t120 参见h323
tel 通过电话网打电话的URL 2806
telephone 用于 tel 的早期草案中
telnet 指定了可能会被 Telnet 协议访问的交互式业务。Telent URL 的格式如下所示: telnet://<user>:<password>@<host>:<port>/ 1738
tip 支持 TIP 原子化的因特网事务处理 2371 2372
tn3270 根据ftp://ftp.isi.edu/in-notes/iana/assignments/url-schemes 保留
tv TV URL 命名了一个特定的电视广播信道 2838
uuid UUID(通用唯一标识符)不包含与位置有关的信息。也称为 GUID(全球唯一标识符)。由一个 128 位的唯一 ID 组成。它和 URN 一样,不会随时间发生变化。要使用无法或不应该依赖于特定的物理根名字空间(比如一个 DNS 名称)的通用标识符时,UUID URI 是很有用的。 参见draft-kindel-uuid-uri-00.txt
urn 持久的、与位置无关的 URN 2141
vemmi 允许VEMMI(万用多媒体接口)客户端软件和 VEMMI 终端连接 VEMMI 兼容的服务。VEMMI 是一种在线多媒体应用服务的国际标准 2122
videotex 允许 videotex 客户端软件或终端连接与 ITU-T 和 ETSI videotex 标准兼容的 videotex 服务。 参见http://www.ics.uci.edu/pub/ietf/uri/draft-mavrakis-videotex-urlspec-01.txt
view-source 网景的 Navigator 的源码查看器。这些 view-source URL 可以显示用 JavaScript 生成的HTML
wais 广域信息服务——一种早期搜索引擎形式 1738
whois++ WHOIS++ 简单因特网目录协议的 URL。 参见http://martinh.net/wip/whois-url.txt 1835
whodp WhoDP(Widely Hosted Object Data Protocol,广泛托管对象数据协议)用于沟通大量动态、可重定位对象的当前位置和状态传递。WhoDP 程序通过“订阅”定位对象,接收与某对象有关的信息,并“发布”这些信息,控制此对象的位置和可见状态
z39.50r,z39.50s Z39.50 会话与检索 URL。Z39.50 是一种信息检索协议,不能很好地适用于主要为获取无状态数据而设计的检索模式。它将通用的用户查询设计为面向会话的多步任务,服务器在继续处理任务之前,会向客户端请求额外的参数,因此每一步任务都可能被临时挂起 2056