Почему URL — это надолго
Структура URL — одно из самых долгих решений в SEO. Переделать через год = настроить сотни 301-редиректов, пережить месяц-два падения позиций, потерять частично PageRank.
Правильная структура задаётся до первой строчки кода и работает на агрегатор 5-10 лет без изменений.
Разберём принципы.
Принцип 1. Семантический URL без лишних параметров
Сравните:
| Плохо | Хорошо |
|---|---|
| /p/12345 | /college/mospolytech |
| /catalog/?cat=4&prod=89 | /catalog/bmw/x5-g05 |
| /item.php?id=789 | /cards/kaspi-gold |
«Хороший» URL сам объясняет, что на странице. Это полезно для:
- SEO — слова в URL дают слабый, но реальный сигнал ранжирования
- CTR из выдачи — пользователь видит понятный URL и кликает охотнее
- Шеринг — ссылку в чате удобно отправлять
- Память пользователя — может вернуться по URL
Принцип 2. Иерархия через слэши
Слэши в URL отражают логику структуры сайта:
- /catalog/ — корень каталога
- /catalog/bmw/ — все модели BMW
- /catalog/bmw/x5/ — модель X5
- /catalog/bmw/x5/g05/ — конкретный кузов
Каждый уровень доступен и индексируется отдельно. Breadcrumbs соответствует URL.
Пример из [carto-auto](https://carto-auto.ru):
/catalog/
/catalog/bmw/
/catalog/bmw/x5/
/catalog/bmw/x5/g05/Пример из [opencard](https://opencard-beta.vercel.app):
/cards/
/cards/kaspi-gold/
/country/
/country/kazakhstan/
/service/
/service/chatgpt/Принцип 3. Латиница и дефисы — никогда кириллица
Кириллический URL технически работает, но:
- В шаринге превращается в
/%D0%BA%D0%BE%D0%BB%D0%BB%D0%B5%D0%B4%D0%B6/— нечитаемо - Аналитика и логи становятся сложно читаемыми
- Не все CMS и сервисы корректно обрабатывают
- Поисковики справляются, но рекомендуют латиницу
Правильно:
- /college/mospolytech (транслит)
- /college/moskovskiy-politehnicheskiy-universitet (если длиннее, но осмысленнее)
Неправильно:
- /колледж/мосполитех
Принцип 4. Без trailing slash или со всеми trailing slash
Микс /catalog/bmw и /catalog/bmw/ создаёт дубли в индексе. Google и Яндекс могут считать это разными страницами.
Выбираем один стандарт и придерживаемся:
- Со слэшем:
/catalog/bmw/,/catalog/bmw/x5/ - Без слэша:
/catalog/bmw,/catalog/bmw/x5
Делаем 301-редирект с не-канонического варианта на канонический.
Все 4 наших проекта используют trailing slash — это чуть более консервативный выбор, классика веб-разработки.
Принцип 5. Никаких лишних элементов
Что не должно быть в SEO-URL:
.html,.phpв конце (/college/mospolytech.html— это шум 90-х)- Параметры сессии (
?sessionid=abc123) - Параметры аналитики (
?utm_source=...) — переходим к ним отдельно - Версия (
/v2/catalog/...) — если новая версия, делаем редирект - Дубли слешей (
//catalog//bmw///) - Lowercase vs Uppercase микс — выбираем lowercase и придерживаемся
Шаблоны для разных типов агрегаторов
Каталог товаров / услуг
/[category]/[subcategory]/[slug]
/electronics/laptops/macbook-pro-16-2024Каталог брендов
/brand/[brand]/[product]
/brand/apple/iphone-15-proГеокаталог
/[city]/[category]/[slug]
/moscow/restaurants/nobuОбразовательный агрегатор
/college/[slug]
/profession/[slug]Финансовый каталог
/cards/[slug]
/country/[slug]
/service/[slug]Каталог недвижимости
/[deal-type]/[city]/[district]/[slug]
/rent/moscow/tverskoy/2-room-apartment-on-tverskayaАнти-паттерны (что НЕ делать)
❌ Глубокая вложенность (4+ уровней)
/categories/electronics/computers/laptops/apple/macbook/pro/16-inch/m3/2024/silverСложно для пользователя, сложно для поисковика. Лучше 2-3 уровня + плоская структура.
❌ Динамические части в URL
/catalog/2024-12-15-bmw-x5Дата в URL = когда страница «устаревает», вы боитесь сменить URL. Делаем без даты.
❌ Цифры вместо названий
/article/1234
/post/567Это анти-SEO. Используйте slug на основе заголовка.
❌ Параметры сортировки в индексируемых URL
/catalog/?sort=price-ascСортировка — не контентная разница. Закрываем эти URL canonical-ом на /catalog/.
Внедрение в Next.js / Astro / другие фреймворки
В большинстве современных фреймворков URL-структура задаётся папками:
src/app/
cards/
[slug]/
page.tsx # /cards/[slug]/
country/
[slug]/
page.tsx # /country/[slug]/
catalog/
[brand]/
[model]/
page.tsx # /catalog/[brand]/[model]/При смене URL-структуры — папки переносятся, и обязательно добавляется 301-редирект со старого URL.
Чек-лист
- [ ] URL семантические, латиница, дефисы
- [ ] Иерархия через слэши
- [ ] Один стандарт trailing slash, 301 на канонический
- [ ] Нет .html, .php, сессий, дублей слешей
- [ ] Глубина не более 3-4 уровней
- [ ] Сортировка под canonical
- [ ] Параметры аналитики (UTM) — Clean-param в robots.txt
Итог
URL-структура — это архитектурное решение на годы. Спроектируйте до кода, придерживайтесь стандарта, не меняйте без причины. Каждое изменение URL стоит SEO-позиций.