1. Главная
  2. Форумы
  3. Техподдержка Drupal
  4. Решение проблем

Drupal 7: почему удалённые или несуществующие страницы, формата /page?id=123 отдают 200ok?

Главные вкладки

Была проблема с двухсотым откликом на вьюшках, поставил модуль view 404.

Теперь появилась задача, убрать дубли страниц, формата "/page?id=123"

Что это за страницы? - Как правило, так выглядит деталка товара на сайте. Раздел и параметр с id товара, добавленный через модуль "магазин > товары".

Что делать с такими страницами?

Комментарии

Аватар пользователя EvgenySorokin EvgenySorokin 31 марта 2022 в 11:47
1

От "дублей" на страницах с параметром обычно спасает наличие правильного тега canonical (если у вас условно страница page.html , и вы переживаете за page.html?id=123, page.html?qwe=rty и тд).

Так же наличие этих страниц зависит от того, на чем и как они сделаны - что за модуль магазина используется в принципе, сайт нужно смотреть для какого-то определенного ответа.

Аватар пользователя dmitry_bavin dmitry_bavin 3 апреля 2022 в 17:49

Спасибо за Ваш ответ!

Как оказалось, не важен модуль магазина, и не важно, была ли удалена страница и была ли она вообще создана. Если есть раздел/страница, как из Вашего примера "page.html" с параметрами, то она автоматически отдаёт двухсотый отклик. Т.е. "page.html?id=123" в любом случае, является корректной ссылкой, и будет сгенерирован контент одного из вариантов (на знаю, по какому принципу.)

Я проверил модули сайта, стоит модуль "global redirect" и "Metateg". И вроде бы, всё правильно настроено. Но на нужных мне карточках, с вариантами товара идут дубли с несуществующих страниц, а тег "canonical", просто не добавляется. Тем временем, на view (представления) с той же пагинацией, всё работает нормально.

Я уже начинаю думать, что бы это сделать программно, но не знаю, как отфильтровать дубли несуществующих страниц, от реальных вариантов товара, ведь у них у всех, правильный отклик.


Аватар пользователя kosskren kosskren 15 января в 15:52

EvgenySorokin wrote: Я уже начинаю думать, что бы это сделать программно, но не знаю, как отфильтровать дубли несуществующих страниц, от реальных вариантов товара, ведь у них у всех, правильный отклик.

Варианты товаров это материал? Если да, то можно смотреть по типу материала и по наличию GET параметра "ID". Условно, если в материале "product" есть GET параметр ID, то добавляем canonical тег на страницу.

Логотип drupal.ru

Содержимое сайта публикуется на условиях CreativeCommons Attribution-ShareAlike 3.0 или более поздней версии. Программные коды в тексте статей — на условиях GNU GPL v2 или более поздней версии.

Документация по совместной работе с репозиторием drupal.ru – https://docs.drupal.ru/code

Drupal – торговая марка Дриса Бёйтарта

12+

AltStyle によって変換されたページ (->オリジナル) /