Как исправить проиндексированные страницы, которые не должны сканироваться роботом GoogleBot и другими поисковыми системами?

На существующем сайте.Net MVC3 мы реализовали пейджинг, где URL выглядит примерно так: www.mysite.com/someterm/anotherterm/_p/89/10где 89 - номер страницы, а 10 - количество результатов на странице.

К сожалению rel="nofollow" отсутствовал в ссылках с номерами страниц больше 3, и эти страницы также отсутствовали <meta name="robots" content="noindex,nofollow" />,

Проблема в том, что Google и несколько других поисковых систем проиндексировали эти страницы и теперь пытаются сканировать их все довольно часто, что, как мы выяснили, начало оказывать радикальное влияние на сервер prod db. Мы не хотим, чтобы просканировались все эти дополнительные тысячи страниц, только первые несколько.

Я вернул код обратно в версию сайта, которая не включает подкачку страниц, чтобы наш сервер БД не пострадал так сильно сейчас. Таким образом, хотя поисковые системы получат 404 ошибки для всех этих страниц, я хочу знать, лучше ли это делать, так как через некоторое время я снова представлю пейджинговый сайт?

Я мог бы добавить следующее в web.config, чтобы все 404 перенаправлялись на домашнюю страницу:

 <httpErrors errorMode="Custom">
     <remove statusCode="404"/>
     <error statusCode="404" path="/" responseMode="ExecuteURL"/>
  </httpErrors>

Но я думаю, что это будет отображаться как "дублированный контент" для всех этих страниц с параметрами URL-адреса нумерации страниц.

Является ли здесь лучшей идеей, чтобы эти 404 продолжались в течение недели или двух, а затем заново представляли пейджинговый сайт?

Другим вариантом может быть освобождение сайта подкачки с добавлением некоторого кода для отклонения сканеров на страницах больше 3. Предложения?

Есть ли более быстрый способ получить эти страницы из индексов, чтобы они не сканировались?

Благодарю.

3 ответа

Решение

Просто оставить страницы как 404 не годится, так как это постоянное удаление. Рассмотрим протокол передачи гипертекста RFC 2616 - HTTP/1.1, глава 10. Определения кода состояния:

"Запрашиваемый ресурс больше не доступен на сервере, и адрес пересылки неизвестен. Ожидается, что это условие будет считаться постоянным. Клиенты с возможностями редактирования ссылок ДОЛЖНЫ удалять ссылки на Request-URI после одобрения пользователя. Если сервер не знает или не имеет возможности определить, является ли условие постоянным, СЛЕДУЕТ использовать код состояния 404 (не найден). Этот ответ кешируется, если не указано иное.

Ответ 410 в первую очередь предназначен для содействия задаче веб-обслуживания, уведомляя получателя о том, что ресурс намеренно недоступен и что владельцы серверов желают удалить удаленные ссылки на этот ресурс. Такое мероприятие характерно для ограниченных по времени рекламных услуг и для ресурсов, принадлежащих лицам, которые больше не работают на сайте сервера. Нет необходимости отмечать все постоянно недоступные ресурсы как "пропавшие" или сохранять отметку в течение любого промежутка времени - это оставлено на усмотрение владельца сервера ".

Я просто добавил новый метод ActuionResult:

    public ActionResult Http410()
    {
        return new HttpStatusCodeResult(410);
    }

и создал новые маршруты для соответствия "__p":

routes.MapRoute(name: "WholeCountryResultsWithPaging__p", url: "{searchTerm}/__p/{pageNumber}/{pageSize}", defaults: new { controller = "Errors", action = "Http410", pageNumber = UrlParameter.Optional, pageSize = UrlParameter.Optional });

Я бы не стал прибегать к 404-м, кроме как в крайнем случае, а дублированный контент может привести к потере рейтинга страницы. Первое, что я хотел бы сделать, это создать учетную запись Инструментов Google для веб-мастеров и настроить способ сканирования страниц, удаления страниц, используемых атрибутов и т. Д.

Сделайте то же самое (инструменты для веб-мастеров) для Bing, и вы должны быть в чистом виде через день или два. (Движок Bing используется многими другими поисковыми системами, и кажется, что ваши изменения в Bing также сказываются на них.)

Попробуйте создать файл robots.txt, который большинство (не черных) сканеров должны учитывать при блокировке этой страницы, если вы поместите ее в файл robots.txt.

Вот инструмент: http://www.mcanerin.com/EN/search-engine/robots-txt.asp

Кроме того, инструменты для веб-мастеров от Google дают вам отличный сайт, а также могут помочь с robots.txt