URI、URL和URN是什麼?
URI(Uniform Resource identify)、URL(Uniform Resource Location)和URN(Uniform Resource Name)
是識別、定位和命名網際網路上的資源的標準途徑; URL,URN是URI的子集.
URI不能定位或讀取/寫入資源。這是統一的資源定位器(URL)的任務。
URL是一種URI,但是它的大綱元件是已知的網路協議(簡稱協議),並且它把URI元件與某種協議處理
程式(一種資源定位器和根據協議建立的約束規則與資源通訊的讀/寫機制)。
URI一般不能為資源提供持久不便的名稱。這是統一的資源命名(URN)的任務。URN也是一種URI,但是
全球唯一的、持久不便的,即使資源不在存在或不再使用。
web上地址的基本形式是URI,它代表統一資源識別符號。有兩種形式:
URL:目前URI的最普遍形式就是無處不在的URL或統一資源定位器。
URN:URL的一種更新形式,統一資源名稱(URN, Uniform Resource Name)不依賴於位置,並且有可能
減少失效連線的個數。但是其流行還需假以時日,因為它需要更精密軟體的支援。
體系中的URI、URL和URN是彼此關聯的。URI的範疇位於體系的頂層,URL和URN的範疇位於體系的底層。
這種排列顯示URL和URN都是URI的子範疇, URI表示的是統一的資源標識,它是以某種統一的(標準化的
)方式標識資源的簡單字串。典型情況下,這種字串以scheme(命名URI的名字空間的識別符號--一組
相關的名稱)開頭,語法如下:
[scheme:] scheme-specific-part
URI以scheme和冒號開頭。Scheme用大寫/小寫字母開頭,後面為空或者跟著更多的大寫/小寫字母、數
字、加號、減號和點號。冒號把scheme與scheme-specific-part分開了,並且scheme-specific-part的語
法和語義(意思)由URI的名字空間決定。
其中一個例子是http://www.cnn.com,其中http是scheme,//www.cnn.com是 scheme-specific-part,
並且它的scheme與scheme-specific-part被冒號分開了。
我們可以把URI按照絕對的或相對的分類。絕對的URI指以scheme(後面跟著冒號)開頭的URI。前面提
news:comp.lang.java.help和xyz://whatever。你可以把絕對的URI看作是以某種方式引用某種資源,而
這種方式對識別符號出現的環境沒有依賴。
如果使用檔案系統作類比,絕對的URI類似於從根目錄開始的某個檔案的路徑。與絕對的URI不同的,相
對的URI不是以scheme(後面跟著冒號)開始的URI。
它的一個例子是articles/articles.html。你可以把相對的URI看作是以某種方式引用某種資源,而這
種方式依賴於識別符號出現的環境。如果用檔案系統作類比,相對的URI類似於從當前目錄開始的檔案路徑
。
URI 與 URL
什麼是URI:
Web上可用的每種資源 - HTML文件、影象、視訊片段、程式等 - 由一個通過通用資源標誌符
(Universal Resource Identifier, 簡稱"URI")進行定位。
URI一般由三部分組成:
1. 訪問資源的命名機制。
2. 存放資源的主機名。
3. 資源自身的名稱,由路徑表示。
注:大多數人可能熟悉"URL",而不是URI。URL是URI命名機制的一個子集。
什麼是URL:
URL是Uniform Resource Location的縮寫,譯為"統一資源定位符"。通俗地說,URL是Internet上用來
描述資訊資源的字串,主要用在各種WWW客戶程式和伺服器程式上,特別是著名的Mosaic。採用URL可以
用一種統一的格式來描述各種資訊資源,包括檔案、伺服器的地址和目錄等。
URL的格式由下列三部分組成:
第一部分是協議(或稱為服務方式);
第二部分是存有該資源的主機IP地址(有時也包括埠號);
第三部分是主機資源的具體地址。,如目錄和檔名等。
第一部分和第二部分之間用"://"符號隔開,第二部分和第三部分用"/"符號隔開。第一部分和第二
部分是不可缺少的,第三部分有時可以省略。
URL最大的缺點:當資訊資源的存放地點發生變化時,必須對URL作相應的改變。因此人們正在研究新的
資訊資源表示方法,例如:URI(Universal Resource Identifier)即"通用資源標識"(參見RFC 1630)、
URN(Uniform Resource Name)即"統一資源名"和URC(Uniform Resource Citation)即"統一資源引用
符"等。