午夜性刺激在线看免费视频,午夜爽爽爽男女免费观看2020,国产精品99久久不卡

<progress id="sfr6x"></progress>

<source id="sfr6x"></source>

    <progress id="sfr6x"></progress>

    <dl id="sfr6x"><samp id="sfr6x"></samp></dl>
      13812657908

      URL、URI、URN統一資源定位符的聯系

      網絡營銷zenet2年前閱讀:1810

      URL、URI、URN統一資源定位符的聯系 URL標準化 301重定向 太倉網絡公司 第1張

      統一資源定位符(或稱統一資源定位器/定位地址、URL地址等,英語:Uniform Resource Locator,??s寫為URL),有時也被俗稱為網頁地址(網址)。如同在網路上的門牌,是因特網上標準的資源的地址(Address)。它最初是由蒂姆·伯納斯-李發明用來作為萬維網的地址?,F在它已經被萬維網聯盟編制為因特網標準 RFC 1738。

      在網際網路的歷史上,統一資源定位符的發明是一個非?;A的步驟。統一資源定位符的語法是一般的,可擴展的,它使用ASCII代碼的一部分來表示因特網的地址。統一資源定位符的開始,一般會標志著一個計算機網絡所使用的網絡協議。

      統一資源定位符的標準格式如下:

      協議類型:[//服務器地址[:端口號]][/資源層級UNIX文件路徑]文件名[?查詢][#片段ID]

      統一資源定位符的完整格式如下:

      協議類型:[//[訪問資源需要的憑證信息@]服務器地址[:端口號]][/資源層級UNIX文件路徑]文件名[?查詢][#片段ID]

      其中【訪問憑證信息@ :端口號 ?查詢 #片段ID】都屬于選填項。

      語法用法

      主條目:統一資源標志符 § 文法

      超文本傳輸協議(HTTP)的統一資源定位符將從因特網獲取信息的五個基本元素包括在一個簡單的地址中:

      1.傳送協議。Data URI scheme(英語:Data URI scheme)

      2.層級URL標記符號(為[//],固定不變)

      3.訪問資源需要的憑證信息(可省略)

      4.服務器。(通常為域名,有時為IP地址)

      5.端口號。(以數字方式表示,若為HTTP的預設值“:80”可省略)

      6.路徑。(以“/”字元區別路徑中的每一個目錄名稱)

      7.查詢。(GET模式的表單參數,以“?”字元為起點,每個參數以“&”隔開,再以“=”分開參數名稱與資料,通常以UTF8的URL編碼,避開字元沖突的問題)

      8.片段。以“#”字元為起點

      以http://www.cnze.com.cn:80/w/index.php?title=Special:%E9%9A%8F%E6%9C%BA%E9%A1%B5%E9%9D%A2 為例, 其中:

      1.http,是協議;

      2.www.cnze.com.cn,是服務器;

      3.80,是服務器上的網絡端口號;

      4./w/index.php,是路徑;

      5.?title=Special:%E9%9A%8F%E6%9C%BA%E9%A1%B5%E9%9D%A2,是詢問。

      大多數網頁瀏覽器不要求用戶輸入網頁中“http://”的部分,因為絕大多數網頁內容是超文本傳輸協議文件。同樣,“80”是超文本傳輸協議文件的常用端口號,因此一般也不必寫明。一般來說用戶只要鍵入統一資源定位符的一部分(www.cnze.com.cn/wiki/Special:%E9%9A%8F%E6%9C%BA%E9%A1%B5%E9%9D%A2)就可以了。

      由于超文本傳輸協議允許服務器將瀏覽器重定向到另一個網頁地址,因此許多服務器允許用戶省略網頁地址中的部分,比如 www。從技術上來說這樣省略后的網頁地址實際上是一個不同的網頁地址,瀏覽器本身無法決定這個新地址是否通,服務器必須完成重定向的任務。

      其它使用范圍

      統一資源定位符不但被用作網頁地址,JDBC 客戶端也使用統一資源定位符連接其數據庫服務器。作為對比,ODBC 的連接字符串作用相同,但并不采用 URL 格式,而是分號和等號分隔的鍵值對。

      跳到搜索

      URL方案分類圖。URL(定位符)和URN(名稱)方案屬于URI的子類,URI可以為URL或URN兩者之一或同時是URI和URN。技術上講,URL和URN屬于資源ID;但是,人們往往無法將某種方案歸類于兩者中的某一個:所有的URI都可被作為名稱看待,而某些方案同時體現了兩者中的不同部分。

      在計算機術語中,統一資源標識符(英語:Uniform Resource Identifier,或URI)是一個用于標識某一互聯網資源名稱的字符串。 該種標識允許用戶對網絡中(一般指萬維網)的資源通過特定的協議進行交互操作。URI的最常見的形式是統一資源定位符(URL),經常指定為非正式的網址。更罕見的用法是統一資源名稱(URN),其目的是通過提供一種途徑。用于在特定的名字空間資源的標識,以補充網址。

      與URL和URN的關系

      URI可被視為定位符(URL),名稱(URN)或兩者兼備。統一資源名(URN)如同一個人的名稱,而統一資源定位符(URL)代表一個人的住址。換言之,URN定義某事物的身份,而URL提供查找該事物的方法。

      用于標識唯一書目的ISBN系統是一個典型的URN使用范例。例如,ISBN 0-486-27557-4無二義性地標識出莎士比亞的戲劇《羅密歐與朱麗葉》的某一特定版本。為獲得該資源并閱讀該書,人們需要它的位置,也就是一個URL地址。在類Unix操作系統中,一個典型的URL地址可能是一個文件目錄,例如file:///home/username/RomeoAndJuliet.pdf。該URL標識出存儲于本地硬盤中的電子書文件。因此,URL和URN有著互補的作用。

      技術觀點

      URL是一種URI,它標識一個互聯網資源,并指定對其進行操作或獲取該資源的方法??赡芡ㄟ^對主要訪問手段的描述,也可能通過網絡“位置”進行標識。例如,http://www.wikipedia.org/這個URL,標識一個特定資源(首頁)并表示該資源的某種形式(例如以編碼字符表示的,首頁的HTML代碼)是可以通過HTTP協議從www.wikipedia.org這個網絡主機獲得的。URN是基于某名字空間通過名稱指定資源的URI。人們可以通過URN來指出某個資源,而無需指出其位置和獲得方式。資源無需是基于互聯網的。例如,URN urn:ISBN 0-395-36341-1 指定標識系統(即國際標準書號ISBN)和某資源在該系統中的唯一表示的URI。它可以允許人們在不指出其位置和獲得方式的情況下談論這本書。

      技術刊物,特別是IETF和W3C發布的標準中,通常不再[何時?]使用“URL”這一術語,因為很少需要區別URL和URI。[1] 但是,在非技術文獻和萬維網軟件中,URL這一術語仍被廣泛使用。此外,術語“網址”(沒有正式定義)在非技術文獻中時常作為URL或URI的同義詞出現,雖然往往其指代的只是“http”和“https”協議。

      關于URI的討論多源于題目為《W3C/IETF URI規劃聯合小組報告:統一標識資源符(URI),URL和統一資源名(URN):闡明與建議》的 RFC3305 文件。這一RFC文件描述了一個,以統一W3C和IETF內部對于各種“UR*”術語之間關系的不同看法為目的而設立的,W3C/IETF聯合工作小組的工作。雖然未作為標準被這兩個組織所發布,但該文件確立了上述種種共識,并就此催生了許多標準的誕生。

      文法

      URI文法由URI協議名(例如“http”,“ftp”,“mailto”或“file”),一個冒號,和協議對應的內容所構成。特定的協議定義了協議內容的語法和語義,而所有的協議都必須遵循一定的URI文法通用規則,亦即為某些專門目的保留部分特殊字符。URI文法同時也就各種原因對協議內容加以其他的限制,例如,保證各種分層協議之間的協同性。百分號編碼也為URI提供附加信息。

      通用URI的格式如下:

      scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]

      例子

      下圖展示了兩個 URI 例子及它們的組成部分。

      hierarchical part

      ┌───────────────────┴─────────────────────┐

      authority               path

      ┌───────────────┴───────────────┐┌───┴────┐

      abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1

      └┬┘   └───────┬───────┘ └────┬────┘ └┬┘           └─────────┬─────────┘ └──┬──┘

      scheme  user information     host     port                  query         fragment

       

      urn:example:mammal:monotreme:echidna

      └┬┘ └──────────────┬───────────────┘

      scheme              path

      歷史

      命名、定位與標識資源

      URI與URL有著共同的歷史。在1990年,蒂姆·伯納斯-李的關于超文本的提案[2] 間接地引入了使用URL作為一個表示超鏈接目標資源的短字符串的概念。當時,人們稱之為“超文本名”[3] 或“文檔名”。

      在之后的三年半中,由于萬維網的HTML(超文本標記語言)核心技術、HTTP與瀏覽器都得到了發展,區別提供資源訪問和資源標記的兩種字符串的必要性開始顯現。雖然其時尚未被正式定義,但“統一資源定位符”這一術語開始被用于代表前者,而后者則由“統一資源名稱”所表示。

      在關于定義URL和URN的爭論中,人們注意到兩者事實上基于同一個基礎的“資源標識”的概念。在1994年6月,IETF發布了Berners-Lee的RFC 1630,(非正式地)指出了URL和URN的存在,并進一步定義了“通用資源標識符”——語義和語法由具體協議規定的類URL字符串的規范文法。此外,該RFC文檔亦嘗試定義了其時正被使用著的URL協議的文法,同時指出(但并未標準化)了相對URL和片段標識符的存在。

      標準改良

      1994年12月,RFC 1738 正式定義了絕對和相對URL,改進了URL文法,定義了如何解析URL為絕對形式,并更加完善地列舉了其時正處于使用中的URL協議。而URN定義和文法直到1997年5月RFC 2141公布后才正式統一。

      1998年8月,隨著RFC 2396的發表,URI文法形成了獨立的標準[4],同時RFC 1630和1738中關于URI和URL的許多部分也得到了修訂和增補。[誰?]。新RFC修改了“URI”中“U”的含義:它開始代表統一(Uniform)而不再是通用(Universal)。RFC 1738中總結了既存URL協議的部分被移至另外一篇獨立文檔中。[5]IANA 保留著這些協議的注冊信息[6],而RFC 2717首次描述了注冊它們的流程。

      在1999年12月,RFC 2732對RFC 2396進行了小幅更新,開始允許URI包括IPv6地址。一段時間以后,在兩個標準中暴露出的一些問題促使了一系列的修訂草案的發展,這些草案被統稱為rfc2396bis。這一由RFC 2396的共同作者Roy Fielding引導協調的集體努力,由2005年1月RFC 3986的發布推至了頂峰。該RFC文檔成為了現今(2009年)于互聯網上被推薦使用的URI文法版本,并使得RFC 2396成為了歷史。然而,它卻并未替代現有的URL協議細節;RFC 1738繼續管轄著大多數協議,除了某些已被它取而代之的場合——例如被RFC 2616改良的”HTTP”協議等。與此同時,IETF發布了RFC 3986,亦即完整的STD 66標準,標識著URI通用文法正式成官方因特網協議。

      在2002年8月,RFC 3305指出,雖然術語“URL”仍被廣泛地用于日常用語之中,但其本身已幾乎被廢棄。其現在的功用,僅是作為對于某些URI因包含某種指示著網絡可達性的協議而作為地址存在的提醒而已?;赨RI的眾多標準,例如資源描述框架等,已經清楚地表明,資源標識本無需指出通過互聯網獲得資源副本的方法,亦無須指出資源是否基于網絡。

      在2006年11月1日,W3C技術架構小組公布了《連接替代副本使查找和發布可行化》,一個對于發布給定資源的多個版本的權威URI和其最佳實踐的指導。例如,內容可能因用于訪問資源的設備的支持性和設定不同,而語言或大小上有所調整已適應這種差異。

      語義網使用HTTP URI協議以標識文檔和現實世界中的概念:這使得人們就如何區分二者產生了一些困擾。W3C技術架構小組(TAG)在2005年6月發布了一封關于如何解決這一問題的電子郵件,該郵件被稱為“http范圍-14 決議” 。

      為了擴充這個(相當簡短的)電子郵件,W3C在2008年3月發布了互聯網組注釋《用于語義網的酷URI》[8]。這一文檔詳細闡釋了內容協商和303重定向碼的使用。

      URI引用

      另一種類型的字符串——“URI引用”——代表一個URI并(相應地)代表被該URI所標識的資源。非正式使用中,URI和URI引用的區別少有被提及,但協議文檔自然不應允許歧義的存在。

      URI引用可取用的格式包括完整URI,URI中協議特定的部分,或其后附部分——甚至是空字符串。一個可選的片段標識符以#開頭,可出現在URI引用的結尾。引用中,#之前的部分間接標識一個資源,而片段標識符則標識資源的某個部分。

      為從URI引用獲得URI,軟件將URI引用與一個絕對“基址”基于一個固定算法合并,并轉換為“絕對”形式。系統將URI引用視作相對于基址URI,雖然在絕對引用的情況下基址并無意義?;稶RI一般標識包含URI引用的文檔,但仍可被文檔內包含的聲明,或外部數據傳輸協議所包括的聲明改寫。若基址URI包括一個片段標識符,則該標識符在合并過程中被忽略。如果在URI引用中出現片段標識符,則在合并過程中被保留。

      網絡文檔標記語言時常使用URI引用指向其它資源,如外部文檔或同一邏輯文檔的其他部分等。

       

      標記語言中URI引用的使用

      在HTML中,img元素的src屬性值是URI引用,a或link元素的href屬性值亦如是。

      在XML中,在一個DTD中的SYSTEM關鍵字之后出現的系統描述符是一個無片段的URI引用。

      在XSLT中,xsl:import元素/指令的href屬性值是一個URI引用,document()函數的第一個參數與之相仿。

       

      絕對URI的例子

      http://example.org/absolute/URI/with/absolute/path/to/resource.txt

      ftp://example.org/resource.txt

      urn:issn:1535-3613

      URI引用的例子

      http://en.wikipedia.org/wiki/URI#Examples_of_URI_references (”http” 指定協議名, “en.wikipedia.org”是“典據”, “/wiki/URI”是指向英文維基頁面的“路徑”,而”#Examples_of_URI_references”是指向英文維基頁面相應片段的“片段”。)

      http://example.org/absolute/URI/with/absolute/path/to/resource.txt

      //example.org/scheme-relative/URI/with/absolute/path/to/resource.txt

      /relative/URI/with/absolute/path/to/resource.txt

      relative/path/to/resource.txt

      ../../../resource.txt

      ./resource.txt#frag01

      resource.txt

      #frag01

      (空字符串)

       

      URI解析

      “解析”一個URI意味著將一個相對URI引用轉換為絕對形式,或者通過嘗試獲取一個可解引URI或一個URI引用所代表的資源來解引用這個URI。文檔處理軟件的“解析”部分通常同時提供這兩種功能。

      一個URI引用可以是一個同文檔引用:一個指向包含URI引用自身的文檔的引用。文檔處理軟件可有效地使用其當前的文檔資源來完成對于同文檔引用的解析而不需要重新獲取一份資源。這只是一個建議——文檔處理軟件自然可以選用另外的方法來決定是否獲取新資源。

      當前截至2009 年的URI規范,RFC 3986,將一個同文檔引用的URI定義為“當解析為絕對形式時與引用的基文檔地址完全一致的文檔”。一般來說,基文檔URI就是包含引用的文檔的URI。例如,XSLT 1.0包括document()函數以實現這一功能。RFC 3986同時也正式定義了URI等效性,一個可以被[誰?]用來判斷一個與基URI不同的URI是否表示同一個資源,并因此可以被認為是同文檔引用。

      RFC 2396給出了一個不同的判斷同文檔引用的方法;RFC 3986替代了RFC 2396,但RFC 2396仍舊作為許多規范和實現的基礎而存在。這一規范將一個空字符串或僅包括#字符和可選的片段標識符組成的URI引用定義為同文檔引用。

       

      與XML名字空間的關系

      XML擁有一個叫名字空間的,一個可包含元素集和屬性名稱的抽象域的概念。名字空間的名稱(一個必須遵守通用URI文法的字符串)用于標識一個XML名字空間。但是,名字空間的名稱一般[9]不被認為是一個URI,因為URI規范定義了字符串的“URI性”是根據其目的而不是其詞法組成決定的。一個名字空間名稱同時也并不一定暗示任何URI協議的語義;例如,一個以“http:”開頭的名字空間名稱很可能與HTTP協議沒有任何關系。XML專家們就這一問題在XML開發電子郵件列表上進行了深入的辯論;一部分人認為[誰?]名字空間名稱可以是URI,由于包含一個具體名字空間的名稱集可以被看作是一個被標識的資源,也由于“XML中的名字空間”規范的一個版本指出過名字空間名稱“是”一個URI引用。[10] 但是,集體共識似乎指出一個名字空間名稱只是一個湊巧看起來像URI的字符串,僅此而已。

      早先,名字空間名稱是可以匹配任何非空URI引用的語法的,但后來的一個對于“XML名字空間建議”的訂正廢棄了相對URI引用的使用。一個獨立的、針對XML 1.1的名字空間的規范允許使用IRI引用作為名字空間名稱的基準,而不僅是URI引用。

      為了消除XML新人中產生的對于URI(尤其是HTTP URL)的使用的困惑,一個被稱為RDDL(資源目錄描述語言)的描述語言被創建了,雖然RDDL的規范并沒有正式地位,也并沒有獲得任何相關組織(例如W3C)的檢查和支持。一個RDDL文檔可以提供關于一個特定名字空間和使用它的XML文檔的,機器與人類都能讀懂的信息。XML文檔的作者鼓勵使用RDDL文檔,這樣一旦文檔中的名字空間名稱被索引,(系統)就會獲取一個RDDL文檔。這樣,許多開發者對于讓名字空間名稱指向網絡可達資源的需求就能得到滿足。


      上一篇:FlashFXP漢化版免注冊下載

      下一篇:谷歌從從車庫到 Googleplex的精神

      猜你喜歡

      網友評論

      午夜性刺激在线看免费视频,午夜爽爽爽男女免费观看2020,国产精品99久久不卡