URL
URL — это определитель местонахождения сайта в сети Интернет. URL состоит из домена, пути, ведущей к странице и имени файла. Первоначально URL являлся адресом расположения файлов. На сегодняшний день его используют во всех существующих ресурсах в Интернете.
Структура URL
Изначально локатор URL был разработан как система для максимально естественного указания на местонахождения ресурсов в сети. Локатор должен был быть легко расширяемым и использовать лишь ограниченный набор ASCII‐символов (к примеру, пробел никогда не применяется в URL). В связи с этим, возникла следующая традиционная форма записи URL:
<схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>#<якорь>
Где:
- Схема обращения к ресурсу — в большинстве случаев имеется в виду сетевой протокол.
- Логин — это имя пользователя, которое используется для доступа к ресурсу.
- Пароль указанного пользователя.
- Хост — полное доменное имя хоста в системе DNS или
IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками; числа — целые в интервале от 0 до 255. - Порт хоста для подключения.
URL-путь — место нахождения ресурса.- Параметры — строка запроса с передаваемыми на сервер (методом GET) параметрами. Разделитель параметров — знак &.
- Якорь — ссылается на определенную часть открываемого документа.
Ограничения
Несмотря на то, что формально длина URL не ограничена, все же не рекомендуется использовать длинные URL (более 2048 символов). Это ограничение для Microsoft Internet Explorer.
Инициатива PURL
Ещё один кардинальный недостаток URL состоит в отсутствии гибкости. Ресурсы во Всемирной паутине и Интернете перемещаются, а ссылки в виде URL остаются, указывая на уже отсутствующие ресурсы. Это особенно болезненно для электронных библиотек, каталогов и энциклопедий. Для решения этой проблемы были предложены постоянные локаторы PURL (англ. Persistent Uniform Resource Locator). В сущности это те же URL, но они указывают не на конкретное место расположения ресурса, а на запись в базе данных PURL, где, в свою очередь, записан уже конкретный URL‐адрес ресурса. При обращении к PURL сервер находит нужную запись в этой базе данных и перенаправляет запрос уже на конкретное местоположение ресурса. Если адрес ресурса меняется, то нет нужды исправлять все бесчисленные ссылки на него — достаточно лишь изменить запись в БД. В настоящий момент эта идея не стандартизирована и не имеет широкого распространения.