URI:Uniform Resource Identifier統(tǒng)一資源標志符
URI是在某一規(guī)則下能把一個資源獨一無二地標識出來,通過這個標識可以訪問一個唯一的資源。
這里的“資源”表示的是web上每一種可用的資源,如HTML文檔、圖像、視頻片段、程序等,它們可以都由唯一的一個URI字符串進行標識,具體的標識規(guī)則由我們自己確定。
放到現(xiàn)實中,資源可以類比一個獨一無二的人、動物、物體,而URI類似于身份證或者DNA(反正是要獨一無二的,它可以使任何規(guī)則)
URL:Uniform Resource Location統(tǒng)一資源定位符
URL一個通過位置來標識資源的字符串,是目前網(wǎng)絡資源的主要訪問機制的。
一個標準的URL必須包括:protocol、host、port、path、parameter、anchor,例如,動物住址協(xié)議://地球/中國/浙江省/杭州市/西湖區(qū)/某大學/14號宿舍樓/525號寢/張三.人,這個字符串同樣標識出了唯一的一個人,起到了URI的作用。
可以看出來,URL是通過位置來確定一個資源的
因此URL是URI的子集,或者說URL是URI的一種實現(xiàn)方式
在上文我們用身份證號也可以唯一確定一個人。用位置也可以確定一個人,對于這個在杭州的張三,我們也可以用:
URI: 身份證號:123456789?
URL: 位置:動物住址協(xié)議://地球/中國/浙江省/杭州市/西湖區(qū)/某大學/14號宿舍樓/525號寢/張三.人
所以不論是用定位的方式還是用編號的方式,我們都可以唯一確定一個人,都是URl的一種實現(xiàn),而URL就是用定位的方式實現(xiàn)的URI。
回到Web上,假設所有的Html文檔都有唯一的編號,記作html:xxxxx,xxxxx是一串數(shù)字,即Html文檔的身份證號碼,這個能唯一標識一個Html文檔,那么這個號碼就是一個URI。
而URL則通過描述是哪個主機上哪個路徑上的文件來唯一確定一個資源,也就是定位的方式來實現(xiàn)的URI。
對于現(xiàn)在網(wǎng)址我更傾向于叫它URL,畢竟它提供了資源的位置信息,如果有一天網(wǎng)址通過號碼來標識變成了http://123456789.html,那感覺叫成URI更為合適,不過這樣子的話還得想辦法找到這個資源…