網址有哪些部分?

通常可以說「我購買了網域」這類字詞或「我們的圖片」 廣告是由其他網站代管」,即使不完全屬實也一樣。不過,在 因此必須更加精確例如,處理 Cookie 前,您必須先瞭解 網站來源 之間的差異。

網址部分的名稱是在標準中指定,而標準也可定義 JavaScript API:

  • 網址標準會定義網址和相關 讓工程師建構可互通的網路瀏覽器。
  • URL API 元件 都會定義方法,提供網址字串中部分的存取權。 例如配置來源

本文將說明與 HTTP 或 HTTPS 網址字串搭配使用的詞彙範圍。這項服務 不會涵蓋其他類型的網址,例如檔案或資料網址。舉例來說, hostorigin,準確的定義本質上複雜,所以這 文件中會提供網址標準的示例和連結,而非 嘗試進行完整解釋

您可以使用 JavaScript 取得由 URL API。例如:

let url = new URL('https://foo.com.au:1234/bar/foo.html#bar');
console.log(url);

URL 分析工具

您可以編輯下方網址,查看網址字串中各部分的名稱方式。 您也可以在以下位置的另一個分頁中開啟此連結: url-parts.glitch.me.


網址部分的名稱會按照字母順序列出。

國家/地區代碼頂層網域 (ccTLD)

ISO 3166-1 國家/地區代碼清單中定義的頂層網域

  • https://example.org.au 的 ccTLD 是 au
  • https://example.io 的 ccTLD 是 io

網域名稱

HTTP 或 HTTPS 網址的一部分 (以點號分隔): scheme,但位於 pathport 之前 (如有指定)。網域名稱的各個部分稱為標籤

網址 網域名稱
https://example.github.io/path example.github.io
https://support.example.org.au:443 support.example.org.au

有效的頂層網域 (eTLD)

公開尾碼清單中的項目,包括 一個 TLD 和(適用於包含多個部分的 eTLD) 的其他網域如下: 第二層、第三層等等等等

  • 例如:comcom.augithub.iosa.edu.auschools.nsw.edu.au

「公開尾碼」(如以下例子所示) 是指網域可使用的名稱 註冊成功。公開尾碼清單會列出所有已知的公開尾碼,以及 經常更新瀏覽器 (包括 Chromium) 和 Firefox 在建構作業中使用清單

eTLD+1

請參閱可註冊的網域

一個 eTLD 以及它前面的子網域。

  • 例如 example.comexample.org.auexample.github.ioexample.sa.edu.auexample.schools.nsw.edu.au

檔案名稱

未在網址標準定義,也不屬於 URL API,但經常會用到 參照 通常是不正確的,假設網址直接對應至某個目錄 成本中心的架構

例如,使用 https://example.com/dir/file.html 時,file.html 可稱為檔案名稱。

瀏覽器也會使用檔案名稱值 (如果已經下載) 為素材資源命名。 舉例來說,https://example.com/images/image.jpg 通常會儲存 傳送至 image.jpg

片段

位於網址結尾的 # 字元後方的字串,可提供 片段 ID

  • 例如,網址 https://example.com/cats#tabby 含有片段 ID 值 tabby
,瞭解如何調查及移除這項存取權。

包含 # 的部分稱為雜湊或錨點。 你也可以連結並醒目顯示文字片段

雜湊是由 URL API (而非片段) 傳回。

完整網域名稱 (FQDN)

網站或伺服器的完整位址,該位址會對應至 IP 位址

網址 FQDN
https://example.com:1234/cats example.com
https://api.example.github.io api.example.github.io

網址的 FQDN 不會包含 port (即使非預設值) 通訊埠。

雜湊 (或錨點)

位於網址結尾的 # 字元後方的字串,可提供 片段 ID.(在 部分情境 這稱為「錨定廣告」)。

排除 # 的部分稱為片段。 你也可以連結及醒目顯示文字片段

雜湊是由 URL API 傳回,而非片段。

主機

根據網址標準的定義,主機可以是 <網域名稱>、IP v4 位址、IPv6 位址、不透明主機或空白 主機。

  • host 的網址標準的定義不包含 port
  • URL.host 包含 除非通訊埠是配置的預設通訊埠,否則通訊埠會中斷。
  • URL.hostname 不包含 通訊埠。
網址 URL.host
https://www.example.com:443/cat www.example.com
// 443 is the default port for the scheme
https://www.example.com:1234/cat www.example.com:1234
https://cat.example.github.io cat.example.github.io

主機名稱

主機名稱是由 JavaScript URL API 定義,但不是由網址定義。 標準。詳情請參閱主機表示法

URL.hostname 會傳回不含通訊埠的「主機」

網址 URL.hostname
https://www.example.com:443/cat www.example.com
https://www.example.com:1234/cat www.example.com
https://cat.example.github.io cat.example.github.io

來源

網址標準定義了 origin,而 的 HTML 標準連結 背景。

如果是 HTTP 或 HTTPS 網址,URL.origin 會傳回「配置」、「主機」和「通訊埠」 (除非通訊埠為預設值) 。

網址 URL.origin
https://www.example.com:443/cat https://www.example.com
https://www.example.com:1234/cat https://www.example.com:1234
https://cat.example.github.io https://cat.example.github.io

參數

請參閱「搜尋參數

密碼

請參閱使用者名稱

路徑名稱

如果是 HTTP 或 HTTPS 網址,則網域和通訊埠 (如果已定義) 之後的部分。 必須包含filename (如果已定義),但不含 搜尋字串雜湊

網址 URL.pathname
https://example.com [empty string]
https://example.com:8000/search?q=tabby /search
https://example.github.io/cat/pattern#tabby /cat/pattern
https://example.github.io/README.md /README.md

「路徑」有時用於參照沒有檔案名稱的路徑名稱。適用對象 以 https://example.com/cat/pattern/tabby.html 網址為例,「path」 為 /cat/pattern

通訊埠

網址中 : 後方的數字,可用來識別網路通訊埠。例如: 網址 https://example.com:1234/tabby,通訊埠號碼為 1234。

通訊埠編號必須是 16 位元無正負號整數,也就是整數 介於 0 到 65535 之間 (含 0 和 65535)。

HTTP 網址的預設通訊埠為 80;則預設值為 443。網址 除非使用非預設通訊埠,否則您不需要指定通訊埠號碼。

如果通訊埠是配置的預設通訊埠,API 就會傳回空白字串。

網址 URL.port
https://example.com // empty string
https://example.com:443/foo // empty string: port is default for scheme
https://www.example.com:1234/foo 1234

通訊協定

配置,後面加上 : (例如 http:https:)。

protocol 可透過 URL API 取得,但 scheme 無法使用。

查詢 (或「查詢字串」)

網址的「搜尋」部分,但不含開頭的 ?

註冊網域

  • 如果網址只有部分 eTLD,例如 comorg ( 與 TLD 對應的 eTLD)、網域和 第二層網域:例如 example.comexample.org
  • 如果網址包含兩部分 eTLD,但只有第三方註冊, 允許 (即 公開尾碼清單中的項目,例如 com.augithub.io) 由兩部分組成的頂層網域 (「公開尾碼」) 和第三層網域名稱 才出現例如 example.org.auexample.github.io
  • 如果 eTLD 包含三個以上的部分,請使用 eTLD 和網域。
,瞭解如何調查及移除這項存取權。

架構

網址中用來定義網路通訊協定 (或要採取的行動) 的一部分 (在 :// 之前) 送出要求)。例如將要求傳送到 配置為 https 的網址應使用 HTTPS 通訊協定建立。對帶有配置的網址要求 例如未對應至網路的 filemailtogit 通訊協定的行為則視使用者代理程式而定。舉例來說 大多數的瀏覽器都會使用 mailto 連結開啟預設的電子郵件應用程式,使用 連結 href 網址的值

問號後方的一連串鍵/值組合 parameters 和其值 (在 pathname 後方提供)。

網址 URL.search
https://example.com/cats?pattern=tabby&mood=bonkers ?pattern=tabby&mood=bonkers
https://example.com/cats:443?pattern=tabby ?pattern=tabby

query 或「查詢字串」是指 search,不含 領先 ?

另請參閱「搜尋參數」。

搜尋參數

請參閱搜尋字串中傳送的資料項目 (或「查詢字串」)。

  • 例如:如果是 https://example.com/cats?pattern=tabby&mood=bonkers, 搜尋字串有兩個參數:pattern=tabbymood=bonkers

第二層網域

「頂層網域」之前的網域。

  • https://www.example.com 網址為例,第二層網域是 example.com,這是頂層網域 com子網域

  • https://example.org.au的頂層網域是au,第二層網域 網域為 org,第三層網域為 example。在這個例子中 org.auau 的子網域,example.org.auorg.au

網站

網站是由 和「相同網站」這兩個元素 包含配置 不配置同網站

網站未在網址標準或 JavaScript URL API 中定義。

在這個環境中:

  • 如果是 HTTP 或 HTTPS 網址,但 eTLD (例如 https://example.com,網站包含 scheme、eTLD 和 label 這些資料。以 https://www.example.com/cat 網址為例,網站是 https://example.com。(這個網址的 eTLD 與 頂層網域)
  • 多部分 eTLD (例如 co.ukgithub.iosa.edu.au) 「網站」包含 schemeeTLD標籤。 以 https://cat.example.co.uk/tabby 網址為例,網站是 為「https://example.co.uk」和「https://www.education.sa.gov.au」網站 為 https://education.sa.gov.au
網址 網站 (具有配置和 eTLD +1)
https://cat.example.com/tabby (「https」、「example.com」)
https://cat.example.co.uk/tabby (「https」、「example.co.uk」)

有別於 origin,網站不包含 port

子網域

隸屬於較高層級網域的網域。

如果網站中的頂層網域只有單一部分,例如 comorg, ,且每個網域之間以半形句號分隔。

  • www.example.comexample.com 的子網域。
  • support.api.example.orgapi.example.org 的子網域,也就是 example.org 的子網域。

適用於僅允許第三層註冊的 eTLD(即項目) (例如 co.uk公開尾碼清單) github.io) 是網域名稱之前的部分。

  • 例如 cat.example.co.ukexample.co.uk 的子網域。

文字片段

一種片段,可以連結至並醒目顯示 網頁中的特定範圍文字當使用者追蹤含有文字片段的連結時, 瀏覽器會嘗試尋找、捲動並醒目顯示網頁上的文字。

文字片段以 :~:text= 開頭,後面接著搜尋字詞。

例如連結到文字「片段」的第一個出現文字 請使用這個網頁 https://web.dev/articles/url-parts#:~:text=fragment

詳情請參閱文字片段

頂層網域 (TLD)

根可用區資料庫中列出的網域名稱,例如 comorg。部分頂層網域是 國家/地區代碼頂層網域,例如 uktv

描述 HTTP 或 HTTPS 網址各部分時,TLD 是網域名稱。 緊接在最後一個點後面

  • 如果是 https://example.org,則網址的頂層網域是 org
  • 如果是 https://example.org.au,該網址的頂層網域是 auorg第二層網域 (雖然 org 也是頂層網域) 網域)。org.aueTLD 的兩個部分。

eTLD公開尾碼清單包括包含一、兩個以上部分的網域,因此 TLD 也可以是 eTLD。例如:

  • https://example.com 的網址的 eTLD 是 com,也是 TLD。

使用者名稱

開頭可以提供選填的使用者名稱和密碼 但這個做法已不適用 為了安全起見,許多情況下都會遭到忽略。

舉例來說,https://user123:password1@example.com 使用者名稱: user123。請注意,使用者名稱 (和密碼!) 為純文字,未加密。 如果使用者名稱包含 :@ 符號,則必須將網址編碼為 %3A%40


瞭解詳情