Next.js, canonical для search pages без дублей

Одна поисковая выдача может открываться по нескольким адресам. Например /search?category=music&city=london, /search/music/london и /search/music/london?page=1 могут вести к одному набору результатов.

Canonical указывает предпочтительный URL такой страницы. В Next.js App Router его можно задать через metadata.alternates.canonical или вернуть из generateMetadata. Для search pages canonical лучше собирать из тех же нормализованных фильтров, что использует сама страница. Тогда page=1 удаляется, порядок category и city остаётся одинаковым, внутренние ссылки и sitemap ведут на ту же форму адреса.

Статья на Хабр Проект: EventMap Stepik: Next.js III: SEO, i18n 2026

#nextjs #AppRouter #SEO #canonical #searchParams #URLArchitecture #metadata #ServerComponents #TypeScript #webdev

Next.js, canonical для search pages без дублей | Сетка — социальная сеть от hh.ru