Сегментация сайта
Если сайт достаточно большой, то для организации качественного обхода роботом, адреса документов с этого сайта проходят процедуру предварительной сегментации.
Сегменты сайта определяются следующими компонентами:
- Регулярным выражением на адрес документа без параметров.
- Списком обязательных параметров (необязательно).
- Списком обязательных параметров и их значений (необязательно).
Если адрес документа удовлетворяет регулярному выражению, то документ относится к данному сегменту.
Пример: Записи в блоге //go.mail.ru/blog/ будут попадать в такой сегмент:
^/blog/[0-9]+/[0-9]+/[0-9]+/[^/]*$//go.mail.ru/blog/2012/08/14/poiskmailru-chast-pervaya/
//go.mail.ru/blog/2013/08/21/metaopisaniya-v-rezultatah-vydachi/
Если этот список указан, то дополнительно к регулярному выражению из пункта 1, проверяется наличие параметров из указанного списка. Если они есть, то документ относится к данному сегменту. Если их нет, то не относится.
Пример: Список страниц блога
^/blog$ +page//go.mail.ru/blog/?page=2
//go.mail.ru/blog/?page=7
Если этот список указан, то дополнительно к проверкам из пункта 2, проверяется не только наличие параметров, но и их значения.
Пример: Поиск по закрытым вопросам из //otvet.mail.ru/
^/search_otvet$ +q+zvstate ~zvstate=1//go.mail.ru/search_otvet?q=чем+кормить+кота&zvstate=1
//go.mail.ru/search_otvet?q=что+измеряют+динамометром&zvstate=1
Адрес документа сначала проверяется последовательно по списку правил, начиная с первого до срабатывания первого правила. Если не нашлось ни одного правила, «сработавшего» для адреса данного документа, то он попадает в специальный «нулевой» сегмент.
С каждым сегментом связана информация о том, сколько документов из него наш Поиск может скачать, поставлено в очередь на скачку и сколько уже скачано.