Нормализация (термообработка)
- 1 year ago
- 0
- 0
Нормализа́ция URL — процесс, при котором URL приводится к единообразному виду. Цель процесса нормализации заключается в преобразовании URL в нормализованный вид, с тем, чтобы определить эквивалентность двух синтаксически различных URL-адресов.
Поисковые системы используют нормализацию URL для того, чтобы снизить индексацию дубликатов страниц и расположить страницы в порядке значимости. Поисковые роботы выполняют нормализацию URL для того, чтобы избежать повторного сканирования ресурса. Браузеры могут выполнять нормализацию, чтобы определить было ли посещение или есть ли страница в кэше.
Есть несколько типов нормализации, которые могут быть применены к URL: одни сохраняют исходный адрес , другие — не сохраняют .
Перечисленные ниже способы нормализации описаны в и приводят к эквивалентным URL.
HTTP://www.Example.com/
→
http://www.example.com/
http://www.example.com/a%c2%b1b
→
http://www.example.com/a%C2%B1b
%41
-
%5A
и
%61
-
%7A
),
Цифровые
(
%30
-
%39
), дефис (
%2D
), точка (
%2E
), подчёркивание (
%5F
), или тильда (
%7E
) не должны создаваться URI поставщиками и когда находятся такие URI с процентными конструкциями, то они должны быть переведены в символы.
Например:
http://www.example.com/%7Eusername/
→
http://www.example.com/~username/
http://www.example.com:80/bar.html
→
http://www.example.com/bar.html
Для протоколов http и https следующие варианты нормализации по стандарту могут привести к эквивалентным URL, но стандартом это не гарантируется.
http://www.example.com/alice
→
http://www.example.com/alice/
http://www.example.com/../a/b/../c/./d.html
→
http://www.example.com/a/c/d.html
Применяются следующие способы нормализации, приводящие к различному написанию URL, ведущих на один ресурс:
http://www.example.com/default.asp
→
http://www.example.com/
http://www.example.com/a/index.html
→
http://www.example.com/a/
http://www.example.com/bar.html#section1
→
http://www.example.com/bar.html
http://208.77.188.166/
→
http://www.example.com/
https://www.example.com/
→
http://www.example.com/
http://www.example.com/foo//bar.html
→
http://www.example.com/foo/bar.html
http://example.com/
и
http://www.example.com/
могут вести на один ресурс. Многие веб-сайты перенаправляют пользователя с
www
на не-www адрес или наоборот. Алгоритмы нормализации могут определить эти перенаправления и соответствующим образом преобразовать URL. Например:
http://www.example.com/
→
http://example.com/
http://www.example.com/display?lang=en&article=fred
→
http://www.example.com/display?article=fred&lang=en
http://www.example.com/display?id=123&fakefoo=fakebar
→
http://www.example.com/display?id=123
http://www.example.com/display?id=&sort=ascending
→
http://www.example.com/display
http://www.example.com/display?
→
http://www.example.com/display
Некоторые правила нормализации могут быть разработаны для определенных веб-сайтов, изучая списки URL, полученные от предыдущих сканирований журнала или логов сервера. Например, если URL
http://foo.org/story?id=xyz
появляется в журнале логов несколько раз вместе с
http://foo.org/story_xyz
можно предположить, что эти два URL эквивалентны и могут быть нормализованы в одну из форм.
Сконфелд и соавторы в 2006 году представили эвристическую систему DustBuster, которая позволяет обнаружить DUST (different URLs with similar text, различные URL с похожим текстом), это правила которые могут быть применены к URL спискам. Они показали, что как только были найдены нужные правила по DUST и применены к нормализующим алгоритмам, они показали способность к поиску до 68 % избыточных URL-адресов в списках URL.