URI authority
authority của một URI là phần nằm sau scheme và trước path. Nó có thể gồm tối đa ba phần: thông tin người dùng, host và cổng.
Cú pháp
host
host:port
user@host
user@host:port
host-
Host thường là tên miền hoặc địa chỉ IP của máy chủ lưu trữ tài nguyên. Tên miền được phân giải thành địa chỉ IP bằng Domain Name System.
portOptional-
Port là một số cho biết cổng mà máy chủ đang lắng nghe yêu cầu. Nó là tùy chọn và mặc định là 80 cho HTTP và 443 cho HTTPS. Các scheme khác có thể tự định nghĩa giá trị mặc định hoặc bắt buộc phải có.
userOptional-
User là tùy chọn và được dùng cho mục đích xác thực. Nó không thường được dùng trong URI trên web.
Warning: Không nên cung cấp trực tiếp thông tin người dùng trong URL HTTP, vì điều đó có thể làm lộ thông tin nhạy cảm. Hãy dùng các phương thức khác như xác thực HTTP hoặc cookie phiên thay thế. Đôi khi, các trang lừa đảo đánh lừa người dùng bằng cách hiển thị những URL gây hiểu nhầm, trong đó phần "user" trông như thể là tên miền, được gọi là semantic URL attack.
Mô tả
Hãy xem URL sau:
http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
Authority trong trường hợp này là www.example.com:80, bao gồm tên host (cụ thể là một tên miền) và một cổng.

www.example.com là host name của URI, cho biết máy chủ web nào đang được yêu cầu. Ở đây ta dùng tên miền, nhưng cũng có thể dùng IP address của host.
Vì địa chỉ IP kém tiện hơn và khó nhớ hơn, nên thường dùng tên miền trừ khi máy chủ không có tên miền đã đăng ký.

:80 là port của URL, cho biết "cổng" kỹ thuật dùng để truy cập tài nguyên trên máy chủ web. Nó thường được bỏ qua nếu máy chủ web dùng các cổng chuẩn của giao thức HTTP (80 cho HTTP và 443 cho HTTPS) để cấp quyền truy cập tài nguyên. Nếu không, nó là bắt buộc.
Ví dụ
https://mdn.go-mizu.dev-
Host là
developer.mozilla.org. Port không được chỉ định nhưng sẽ mặc định là 443 nếu truy cập quahttps:. http://localhost:8080-
Host là
localhostvà port là8080.localhostlà một tên host đặc biệt mà trình duyệt phân giải thành địa chỉ cục bộ127.0.0.1. postgresql://postgres:admin123@db:5432-
Host là
db, và port là5432. Nó cũng chỉ định userpostgresvà mật khẩu của nó làadmin123. Điều này có thể được dùng để kết nối với cơ sở dữ liệu PostgreSQL. https://cnn.example.com&story=breaking_news@10.0.0.1-
Một URL gây hiểu nhầm trông như đang trỏ tới một trang web đáng tin cậy. Tuy nhiên, tên host là
10.0.0.1, và phầncnn.example.com&story=breaking_newslà "user".
Thông số kỹ thuật
| Specification |
|---|
| Unknown specification> # section-3.2> |