Выдался случай неплохо проверить реакцию поисковиков на 410 код ответа. Коротко: Яндексу зачёт, о Гугле цензурно нечего сказать.
Проблема
Зеркало сайта попало в индекс поиска почти сразу же, как было выведено в онлайн (предполагались постраничные 301), поэтому склейка зеркала с основным доменом ещё не произошла. При этом, внутренние ссылки зеркала указывали на основной домен. В результате получился сумасшедший рост числа внешних ссылок с зеркала — сотни тысяч за считанные дни.
Соображения
Самое очевидное — восстановить постраничные 301-е редиректы показалось нежелательным из-за опасений "а вдруг поиск посчитает" происходящее какими-то махинациями и накажет — вызывала опасения цифра в сотни тысяч новоиспечённых "внешних ссылок" с непонятно какого сайта (зеркало ещё не успело склеиться).
И так как зеркало не имело ценности в виде передачи какого-то веса или авторитета основному домену, решил зафигачить 410 — то есть, закосить под технический сбой (хотя... это и так был технический сбой). Мол, тех. сбой это не то же самое, что манипуляции с подклейками или внешними ссылками.
Внедрение
Итак, на все страницы был настроен 410-й код ответа, файл robots.txt тоже стал отдавать 410 (настроить отдачу кода 200 для него оказалось дороговато, поэтому решено было забить). То есть, он не мог блокировать доступ Гугла к 410-м страницам.
Инструмент удаления URL из консоли Google не использовался (где-то на просторах интернетов встречал рекомендации использовать данный способ):
- Зачем, если 410-й код самодостаточен;
- Для чистоты эксперимента (по логике 410 должно было быть более чем достаточно).
Плюс в доках Гугла прямо говорится, что данный приём не совсем подходит:
Инструмент удаления URL позволяет скрыть вашу страницу лишь временно (примерно на шесть месяцев). Если вы хотите исключить контент из результатов поиска Google навсегда, примите дополнительные меры.
Хотя, возможно, именно так и надо делать — прибивать страницы таким способом, и тогда Гугл действует более оперативно, но это не точно.
Результаты
Яндекс
Все 410-е выпали довольно быстро (заняло до месяца), и через 1,5 месяца исчезли сотни тысяч косячных "внешних ссылок" (по данным ЯВМ — тогда ещё работал инструмент, предоставляющий данные по внешним ссылкам).
Гугл
Спустя 9,5 месяцев после внедрения Гугл соизволил снизить число страниц в индексе до 1 (проверялось с помощью оператора site:
) и число "внешних ссылок" (по данным Консоли) с зеркала на основной домен до нескольких десятков.
Вообщем, ситуация была такова, что спустя месяцы после внедрения 410, тысячи страниц по-прежнему маячили в индексе.
Какие могут быть варианты, что 410 сработал слишком посредственно:
- некорректная техническая реализация; вряд ли — бъётся результатами в Яндексе (иначе там тоже возникли бы проблемы);
-
оператор
site:
и/или Консоль показывали мусорные данные; вряд ли — эти данные могут быть не супер точными, но явно не откровенно мусорными; - Гугл не работал нормально с 410-м кодом; считаю наиболее вероятной причиной, и далее буду исходить из этой версии (пофантазирую, а что если Гугл иногда может омерзительно отрабатывать 410-й код, и это фича, а не баг).
Документация
Итак, срок выбивания страниц из индекса по 410-му коду может быть феерически долгим. И может быть неспроста Google в своей документации не упоминает сроки:
Удалите или измените контент сайта (изображения, страницы, каталоги) и убедитесь, что ваш веб-сервер отправляет ответ с кодом статуса HTTP 404 (не найдено) или 410 (удалено).
Трескотня говорящих голов
А о чём же вещают говорящие головы. Разберу такой репортаж. Итак, из нарезки мутных пассажей всё-таки можно сделать некоторые выводы по срокам:
if we see a page and we get a 404, we are gonna protect that page for 24 hours in the crawling system
...
If we see a 410, then the site crawling system says, OK we assume the webmasters knows what they’re doing
...
So they immediately convert that 410 to an error, rather than protecting it for 24 hours
...
we’ll still go back and recheck and make sure are those pages really gone, or maybe the pages have come back alive again
Понимаю это как то, что Гугл прямо таки очень резкий в случае 410-го кода, и даже не защищает страницу от выпадения из индекса на 24 часа. И ещё батька Гугл такой заботливый, что периодически будет посещать 410-е URL'ы, чтобы вернуть в индекс то, что успело выпасть.
Раз я и близко такого не наблюдал в рассматриваемом примере, то мне кажется, что как минимум иногда слова бюрократа Гугл есть отборная пурга.
...Ещё такой репортаж. Что же там есть по срокам — немного, опять мутно, но и то хлеб:
If you’ve already removed this content long ago, then it’s already not indexed so it doesn’t matter for us if you use a 404 or 410.
Ага, значит, если контент убран "давно", то он уже якобы не проиндексирован. В рассматриваемом примере месяцы спустя контент был всё ещё проиндексирован. Поэтому, мне кажется, что слова и этого бюрократа, как и предыдущего, иногда могут быть пургой.
Заключение по бюрократам
Не исключено, что в прочих случаях они вещают нечто совсем другое по смыслу, но предполагаю, что там тоже мутные изречения. Вообщем, документация рулит — она красноречива отсутствием упоминания сроков выбивания из индекса, а тратить время на говорящие головы надо умеренно, и относиться критически к их болтовне.
Всего один пример?
Да, и это маловато. Однако случай-то простейший и показательный — есть 410-й код на всех страницах, есть реакция поиска на индексирование сайта. И даже с натяжками реакция Гугла ни в какие ворота не лезет.