Как правильно бороться с мусорными параметрами в URL

12
Weblady
На сайте с 26.07.2011
Offline
168
341

На сайте в индексе появились дубли страниц. Поисковые боты (или кто-то ещё) генерируют URL с мусорными параметрами в строке запроса, например:

/category/article?sa=X&ved=2ahUKEwj...&page=1
/articles/grustnye-istorii?%86%DFut%9F%2F%E4%F2...
/stihi?post=18659616_67&page=211

Действительные url такие:

/category/article?page=1

/articles/grustnye-istorii

/stihi?page=211

Сам движок Drupal эти параметры игнорирует, но отдаёт код 200, из-за чего поисковики считают это полноценными страницами и индексируют их как дубли.

Какой способ лучше выбрать для решения проблемы?

Вариант 1. Блокировать в robots.txt через  Disallow: /*?*  и  Disallow: /*?*%*  и т.п. — отсечёт ботов, но сами URL останутся доступны.

Вариант 2. Настроить редирект на уровне nginx — например, через  if ($request_uri ...)  или  map , чтобы автоматически делать 301-редирект с мусорных параметров на чистый URL.

Какой вариант безопаснее и правильнее для Drupal 10? Есть ли у кого готовые рабочие примеры для nginx под эту задачу (безопасно удалить всё, кроме  page= )? Или, может, есть другие решения?


L
На сайте с 10.02.2015
Offline
275
#1

Clean-Param
Canonical

Глянуть в логах, может ПС их и не посещает

E
На сайте с 01.10.2017
Offline
142
#2
Weblady :
Какой способ лучше выбрать для решения проблемы?

Обычный: 404 или 301. Можно фильтровать как все запросы (при помощи сервиса/посреднического ПО), так и отдельные на уровне конкретного маршрута. У Drupal-а достаточно развитой фрэймворк, чтобы делать это штатными средствами: google.com/search?q=drupal+404+if+query+string+not+empty

С другой стороны у распространенных CMS это известная проблема. Рядовые вебмастеры обычно с ней борются средствами, которые назвал выше livetv.

Домены на продажу: https://p20.ru/collection/domains-for-sale
E
На сайте с 01.10.2017
Offline
142
#3
Weblady :
/category/article?page=1
Это одна из основных причин не "убивать" все страницы со строкой запроса (query string) в адресе. Поэтому обычно фильтруют на уровне конкретного маршрута. А на уровне общего сервиса можно отфильтровать лишнее обобщенно.
Vladimir SEO
На сайте с 19.10.2011
Offline
2155
#4
404, а ботов кто генерит заблочить
master32
На сайте с 09.02.2022
Offline
136
#5
Weblady :

На сайте в индексе появились дубли страниц. Поисковые боты (или кто-то ещё) генерируют URL с мусорными параметрами в строке запроса, например:

/category/article?sa=X&ved=2ahUKEwj...&page=1
/articles/grustnye-istorii?%86%DFut%9F%2F%E4%F2...
/stihi?post=18659616_67&page=211

Действительные url такие:

/category/article?page=1

/articles/grustnye-istorii

/stihi?page=211

Сам движок Drupal эти параметры игнорирует, но отдаёт код 200, из-за чего поисковики считают это полноценными страницами и индексируют их как дубли.

Какой способ лучше выбрать для решения проблемы?

Вариант 1. Блокировать в robots.txt через  Disallow: /*?*  и  Disallow: /*?*%*  и т.п. — отсечёт ботов, но сами URL останутся доступны.

Вариант 2. Настроить редирект на уровне nginx — например, через  if ($request_uri ...)  или  map , чтобы автоматически делать 301-редирект с мусорных параметров на чистый URL.

Какой вариант безопаснее и правильнее для Drupal 10? Есть ли у кого готовые рабочие примеры для nginx под эту задачу (безопасно удалить всё, кроме  page= )? Или, может, есть другие решения?


я бы советовал перевести сайт на ЧПУ, а затем входящие левые параметры блокировать или редиректить через 301
а нужные хорошие параметры, вроде меток UTM отфильтровать через Clean-Param

Mik Foxi
На сайте с 02.03.2011
Offline
1272
#6
Мета тег каноникал полностью решает этот вопрос по самому правильному. Иногда на 1-3 дня поисковики берут в индекс, но потом норм склеивают как надо.
Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (8 лет на защите сайтов).
spbs
На сайте с 22.02.2010
Offline
150
#7
Я за canonical
Слышь, уважаемый, дай фотик на пять сек, позвонить надо...
Weblady
На сайте с 26.07.2011
Offline
168
#8
livetv #:

Clean-Param
Canonical

Глянуть в логах, может ПС их и не посещает

Сейчас на canonical url стоит токен [current-page:url-with-query].

Если изменяю на просто [current-page:url]

canonical на всех страницах начинает вести только на первую страницу

/stihi?page=211 - каноникал - /stihi

Если оставляю токен [current-page:url-with-query] - в canonical появляются те же мусорные символы, что и в самом адресе.

Weblady
На сайте с 26.07.2011
Offline
168
#9
estic #:

Обычный: 404 или 301.

Не отдает Drupal  стандартными средствами 404 или 301 на таких страницах, уже давно ищу.
Vladimir SEO
На сайте с 19.10.2011
Offline
2155
#10
Weblady #:
Не отдает Drupal  стандартными средствами 404 или 301 на таких страницах, уже давно ищу.
клод вам в помощь
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий