URL / URI Tools

Нормализация URL

Нормализуйте адрес, разрешите ссылку или добавьте путь к базе.

нормализация URL

Ввод

Результаты

Вычисление в браузере. Введённый адрес не открывается и не запрашивается.

Параметры

Только HTTP(S). Хост, схема, стандартные порты и точечные сегменты следуют правилам браузера. Зарезервированные символы остаются кодами; canonical не гарантируется.

Ввод и активная база: по 100 000 единиц UTF-16. Вывод: 1 000 000.

Готово · 59 ед. · Параметры: 3

Нормализация URL полезна при проверке скопированного адреса API: регистр хоста может различаться, порт быть стандартным, а путь содержать переходы к родительскому каталогу. Начальный пример показывает изменения до ввода собственного адреса.

У базы /api/v1 два возможных смысла: адрес исходной страницы или каталог, к которому нужно добавить users. Отдельные режимы позволяют явно выбрать смысл, прежде чем менять кодирование или удалять параметры.

Зачем нужна нормализация URL

Сравнить замену и добавление

Нормализация URL делает различие наглядным. Для базы https://example.com/api/v1 разрешение users даёт /api/users, а объединение — /api/v1/users. Так можно проверить, на каком уровне приложение ожидает новый сегмент.

Две ветви заменяют последний каталог файлом или добавляют тот же файл после обоих каталогов.

Сохранить порядок повторяющихся значений

Повторные ключи tag остаются в исходном порядке. flag не превращается в flag=, а + не заменяется на %20. Настройка кодирования не сортирует запрос и не удаляет значения, которые могут быть значимы для приложения.

Цветные метки параметров сохраняют порядок и повторяющуюся пару при изменении кодирования.

Определите роль базового адреса

01

Отделите адрес от ссылки

Нормализатор URL требует явный абсолютный URL с http:// или https://. Для относительной ссылки выберите разрешение и задайте полный адрес исходной страницы. В режиме нормализации база не используется, а протокол для голого домена не подставляется.

02

Проверьте завершающий слеш

При разрешении последний сегмент базы без / считается позицией файла. Объединение добавляет путь после всей базы и сохраняет её запрос и фрагмент. Вводится один путь, допускающий вложенные каталоги, но не ? и #; такие ссылки обрабатываются в режиме разрешения.

03

Проверяйте перед записью в источник

Автоматический запуск ждёт 350 мс после правки. Если его отключить, используйте Ctrl/Cmd + Enter. Устаревший результат нельзя экспортировать. Применение включает нормализацию и очищает базу; отмена восстанавливает исходный ввод, параметры и результат.

Структура адреса и запись кодов

Структурные правила браузера

Схема и хост приводятся к нижнему регистру. Порты 80 для HTTP и 443 для HTTPS опускаются, остальные сохраняются. Браузер обрабатывает сегменты с точками, записывает международные домены как ASCII/Punycode и кодирует символы Unicode в пути.

Три варианта записи байтов

Процентное кодирование можно оставить после разбора, привести шестнадцатеричные буквы к верхнему регистру или декодировать только незарезервированные символы ASCII: буквы, цифры и -._~. %2F, %3F и %23 остаются кодами. Повторного декодирования %252F нет.

Разрешение ссылок и добавление пути

Относительный URL может вести к родителю, корню, только запросу или только фрагменту. Объединение исправляет слеши лишь на стыке и сохраняет внутренние //. Запрос наследуется от базы; два набора параметров автоматически не смешиваются.

Границы преобразования

Не выбирает канонический адрес сайта
Содержимое страниц, перенаправления и настройки сервера не проверяются. Инструмент не навязывает HTTPS, не меняет www, регистр пути, внутренние // или завершающий слеш. Собственная сериализация браузера продолжает действовать. По строке нельзя доказать эквивалентность ресурсов.
Сохранение не означает побайтовое совпадение
Нет сортировки, удаления повторов, фильтров UTM или очистки пустых значений. Браузер и политика кодирования всё же могут изменить запись. Удаление убирает весь запрос, отдельно учитывая пустой маркер ?. Подписанные ссылки нужно проверять по правилам приложения.
Строгий ввод только для HTTP(S)
Разрешение и объединение всегда требуют корректную абсолютную базу. Учётные данные в адресе, управляющие символы, обратные слеши, неверные %-коды и одиночные суррогаты отклоняются. Краевые пробелы удаляются; корректно записанные кодированные байты не проверяются на UTF-8.
Объединение не ограничивает каталог
Путь не должен начинаться со схемы или // и не может содержать ? или #. Начальный одиночный / служит стыком. .. позволяет подняться выше, поэтому результат не является средством контроля доступа. Пустой путь сначала сохраняет базу, затем применяются выбранные политики.
Один адрес и ограничения длины
Ввод и активная база допускают по 100 000 кодовых единиц UTF-16, результат — 1 000 000. При превышении возвращается ошибка без обрезки. Вывод показывается порциями по 20 000 единиц, но копия и TXT содержат весь актуальный результат. Пакетная обработка файлов не предусмотрена.

Нормализация URL: вопросы

Как соединить абсолютный и относительный URL?

Укажите абсолютный адрес страницы как базу, а относительную ссылку — как ввод, затем выберите разрешение. Сработают правила браузера для каталогов, родителя и корня. Чтобы добавить путь после всех сегментов базы, нужен режим объединения.

Почему при разрешении относительного пути заменяется последний сегмент базового URL?

Для /a/b текущий каталог — /a/, поэтому c превращается в /a/c. Если база заканчивается на /a/b/, получится /a/b/c. Режим объединения добавляет после всего пути даже без завершающего слеша. Последний сегмент трактуется по правилам выбранной операции.

Имеет ли значение регистр символов в процентном кодировании URL?

Внутри процентной последовательности %7e и %7E обозначают один байт. Это не делает весь адрес нечувствительным к регистру: File и file могут обозначать разные ресурсы. Регистр сегментов пути поэтому сохраняется.

Эквивалентны ли слеш и %2F в пути HTTP-URL?

Нельзя считать их безусловно эквивалентными. / разделяет сегменты, а %2F — закодированный зарезервированный символ. Серверы и маршрутизаторы могут обрабатывать их по-разному. Даже декодирование незарезервированных символов оставляет %2F, чтобы не создавать новый уровень пути.

Влияет ли порядок параметров URL на дублирование контента в SEO?

Преобразование строки не определяет дубли страниц или канонический выбор поисковой системы. Порядок также может влиять на подписи и логику приложения. По умолчанию он сохраняется; политика сайта должна учитывать реальные страницы и поведение сервера.

Нашли проблему?

Проверьте ожидаемый путь

Нормализация URL позволяет сопоставить исходную строку с результатом. Проверьте режим и число удалений перед копированием или применением нового адреса.