Тематика

Рядом со мной

Регион

Как устроен поиск

Человек открывает страницу ноды, вводит запрос и получает ссылки. Страница сама ничего не хранит: текст уходит в ноду, которая стоит за этим адресом.

Откуда берутся страницы

Нода обходит публичные адреса. Она читает robots.txt, строки Sitemap и Crawl-delay, карточку /llms.txt, а если её нет — /llms.md, и обычные страницы .md. Со страницы забирается видимый текст, JSON-LD, микроразметка, Open Graph, Twitter Card, Dublin Core, description, keywords и canonical.

Если на странице написан край или город, нода помечает регион. Кнопка настроек у строки поиска открывает плашку с текущим краем. Сначала показываются страницы этого края, ниже — остальные. Адрес человека не сохраняется.

Страница с noindex или заголовком X-Robots-Tag: noindex в индекс не попадает. Ссылка с nofollow в очередь не ставится. Файлы .mdx нода не читает.

Как выбирается выдача

Один и тот же запрос ищется двумя способами. Точные слова ищутся по заголовку и тексту. Близкий смысл ищется по вектору страницы. Списки склеиваются, и в выдаче остаётся ссылка, короткий отрывок и отметка «слова», «смысл» или обе сразу.

Буквы «е» и «ё» считаются разными: «мёд» и «мед» — разные запросы. Если во фразе есть намерение купить, известный хост маркетплейса получает штраф, прямой сайт остаётся выше.

Пчела, рой, улей, пасека

Одна нода — это пчела. Несколько нод, соединённых в одну сеть, — рой. Улей — региональный вход, домен, с которого люди ищут. Этот улей открыт на https://beesearch.ru/, кабинет оператора — на https://admin.beesearch.ru/login. Пасека — страна, сеть таких ульев. Робот при обходе по-прежнему называется MDS-Bot.

Несколько нод

Сервер, компьютер и телефон говорят одним протоколом. Главной ноды, которой подчиняются остальные, нет. Сервер и компьютер держат крупный кусок индекса и отдают сайт со строкой поиска. Телефон открывает поиск улья и раз в десять минут читает несколько страниц из очереди, в том числе когда приложение свёрнуто. Чужой трафик через него не идёт.

Запрос идёт к тем пчёлам, которые держат нужный шард, и не больше чем к трём копиям. Если одна копия отвечает заметно медленнее остальных, улей в этот раз её не ждёт. Пока сосед ещё не сообщил свои бакеты, улей спрашивает его как запасной.

Пчела за домашним роутером не открывает порт наружу. Лёгкая пчела сама звонит улью: mds node --lite --site https://ваш-сайт --hive https://beesearch.ru. На сайте лежит файл /.well-known/pchela.txt, в нём одна строка — имя, которое пчела печатает при запуске. Улей принимает новые и изменённые страницы этого сайта. Когда своих изменений нет, пчела берёт чужие адреса из очереди. Компьютер без своего сайта запускается без --site, команда на странице Компьютер. Общий пароль для входа не нужен. Улей открыт на https://beesearch.ru. Домашней пчеле хватает обычного интернета.

Страницы с нарушением закона в выдачу не попадают. Материалы 18+ стоят отдельным блоком и замкнуты, пока человек не подтвердит возраст. Журнал запросов хранит только текст и числа на этой ноде, без адреса человека, и открывается только с компьютера, где нода запущена.

Сколько страниц берётся с одного сайта

Обычный сайт обходится до 100 страниц: этого хватает, чтобы его найти, и один каталог не заполняет поиск. Если страниц больше, владелец перечисляет до ста своих ссылок в /llms.txt. Индексируются они. Сайт, на сервере которого стоит лёгкая пчела, отдаёт все свои страницы. Подробности и ответы, зачем ставить ноду, — на странице Индексация.

Скачать ноду и подключить её