Структура
Используется для обозначения адреса необходимого сетевого ресурса. Т.е, когда нужно дать ссылку на свой сайт, или к какому-либо ресурсу на сайте, адрес записывают в следующем формате:
<протокол>:[//[<логин>[:<пароль>]@]<хост>[:<порт>]][/<ресурс>][?<параметры>][#<якорь>]
Или более понятная сокращенная схема:
Полная схема:
В полной схеме, части :Логин, Пароль, Порт, Якорь используются реже, чем остальные.
В начале URL адреса пишется протокол. По стандарту первый символ буква, последующие могут быть: буквы, цифры, "+", "-", ".". Оканчивается двоеточием (":"). Обязателен в URL, не чувствителен к регистру ("HTTP:", "http:", одно и тоже)
Используется для обозначения логина пользователя, не обязательный компонент. Можно использовать вариант, когда только логин, без пароля: http://vasya:@target.ru/search?query=test#secret
Для обозначение пароля :) Так-же не обязательный компонент.
Части Логин и Пароль вообще не рекомендуется использовать, так как раскрытие учетных данных в URL адресе, не есть хорошо, за исключением когда остается только Логин.
Обязательный компонент. Указывает куда отправить запрос, может быть IPv4/IPv6, Domain адресом. В случае с IPv4, числа должны быть в десятичной системе счисления, а адреса IPv6 должны быть заключены в квадратные скобки "[ ]".
Не обязательный компонент, по умолчанию в зависимости от протокола. Если протокол http, то 80. Если https, то 443. Используют, когда веб сервер, слушает не стандартный порт.