語法
host
host:port
user@host
user@host:port
主機-
主機通常是託管資源的伺服器的域名或 IP 地址。域名使用域名系統解析為 IP 地址。
port可選-
埠是一個數字,表示伺服器正在監聽請求的埠。它是可選的,對於 HTTP 預設為 80,對於 HTTPS 預設為 443。其他方案可能定義自己的預設值或將其設為必需。
user可選-
使用者是可選的,用於身份驗證目的。在 Web URI 中不常用。
警告:不建議直接在 HTTP URL 中提供使用者資訊,因為這可能會洩露敏感資訊。請使用其他方法,如 HTTP 身份驗證或會話 Cookie。有時,網路釣魚網站會透過顯示誤導性 URL 來欺騙使用者,這些 URL 的“使用者”部分看起來像域名,這被稱為語義 URL 攻擊。
描述
考慮以下 URL
http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
在這種情況下,許可權是 www.example.com:80,由主機名(特別是域名)和埠組成。

www.example.com 是 URI 的主機名,指示正在請求哪個 Web 伺服器。這裡我們使用域名,但也可以使用主機的IP 地址。由於 IP 地址不太方便且更難記住,因此通常使用域名,除非伺服器沒有註冊域名。

:80 是 URL 的埠,指示用於訪問 Web 伺服器上資源的“技術入口”。如果 Web 伺服器使用 HTTP 協議的標準埠(HTTP 為 80,HTTPS 為 443)來授予對其資源的訪問許可權,則通常會省略它。否則,它是必需的。
示例
https://mdn.club.tw-
主機是
developer.mozilla.org。埠未指定,但如果透過https:訪問,將預設為 443。 https://:8080-
主機是
localhost,埠是8080。localhost是一個特殊的**主機名**,瀏覽器會將其解析為本地地址127.0.0.1。 postgresql://postgres:admin123@db:5432-
主機是
db,埠是5432。它還指定了使用者postgres及其密碼admin123。這可用於連線到 PostgreSQL 資料庫。 https://cnn.example.com&story=breaking_news@10.0.0.1-
一個誤導性的 URL,看起來似乎指向一個受信任的網站。然而,主機名是
10.0.0.1,而cnn.example.com&story=breaking_news部分是“使用者”。
規範
| 規範 |
|---|
| 未知規範 # section-3.2 |