Широко известен факт, что дублированный контент может возникать за счет произвольных GET параметров. Однако, страницы с такими параметрами просто так не попадают в индекс, поэтому редко создают проблемы. Можно представить вариант атаки на сайт путем прогона в индекс ПС таких дублированных страниц, однако в данном обсуждении хочу обсудить немного другую проблему, вызванную вполне естесственными причинами.
Представим следующую структуру URL:
story/travel/
story/travel/india
Если в определенный момент на сайте пропадает страница story/travel/india, в некоторых случаях данный URL начинает обрабатываться кодом, отвечающим за story/travel. Это не касается, например, случаев цифровых идентификаторов - там корректно работает проверка аргумента.
Таким образом, если значительное количество страниц удаляются, они выдают не 404 а родительский пункт меню, и сайт может пострадать от санкций за дубли. Как минимум, увеличивается нагрузка от роботов ПС по обходу всех этих дублей (на слабом хостинге может и сайт положить).
Может быть кто-то находил глобальный способ отучить Drupal такой обработке URL ? Вставлять проверку URL для каждой страницы отдельно, мне кажется, не очень удачный вариант.
Комментарии
Пока что склоняюсь к варианту, что лучшее решение - это карта сайта. ПС в любом случае имеют алгоритмы борьбы с дублями. Нам, в основном, важно лишь, чтобы ПС знала для каждого уникального контента на сайте какой URL является основным.
Правда, в таком случае остается проблема обхода дублей роботами. Но можно надеяться, что они придают дублям минимальный приоритет, что вполне логично, а значит и редко запрашивают.
rel="canonical"
Займусь немного некропостингом.
Верно.
Добавлю. В Drupal 8, наконец-то, судя по всему, исправляют проблему дублей, вызванных обработкой "чужого" URI по совпадению префикса - т.е. "story/travel/india" не будет обрабатываться колбэком "story/travel".