Рекомендации Google Поиска в отношении структуры URL

Чтобы роботы Google могли сканировать ваш сайт, он должен иметь удобную для просмотра структуру URL, которая отвечает требованиям, описанным ниже. Иначе сканирование вашего сайта может быть неэффективным, например выполняться или слишком часто, или никогда.

Требования к структуре сканируемых URL

Следуйте стандарту IETF STD 66

Google Поиск поддерживает URL, заданные по стандарту IETF STD 6х6. Символы, определяемые в нем в качестве зарезервированных, должны быть закодированы с использованием знака процента.

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

Не используйте фрагменты, чтобы изменять содержимое страницы, поскольку Google Поиск обычно не поддерживает фрагменты URL. Вот пример URL с фрагментом:

https://example.com/#/potatoes

Если вы изменяете контент с помощью JavaScript, перейдите на History API.

Используйте стандартное кодирование параметров URL

Указывая URL, следуйте перечисленным далее общим принципам кодирования: разделяйте пары "ключ-значение" знаком равенства (=) и добавляйте параметры через амперсанд (&). Указать несколько значений для одного ключа из пары "ключ-значение" можно через любой символ, совместимый со стандартом IETF STD 66, например запятую (,).

Рекомендуется Не рекомендуется
Разделять пары "ключ-значение" знаком равенства (=) и добавлять параметры через амперсанд (&):
https://example.com/category?category=dresses&sort=low-to-high&sid=789
Разделять пары "ключ-значение" двоеточием (:) и добавлять параметры в квадратных скобках ([ ]):
https://example.com/category?[category:dresses][sort:price-low-to-high][sid:789]
Указывать значения для одного ключа через запятую (,), разделять пары "ключ-значение" знаком равенства (=) и добавлять параметры через амперсанд (&):
https://example.com/category?category=dresses&color=purple,pink,salmon&sort=low-to-high&sid=789
Разделять пары "ключ-значение" одной запятой (,) и добавлять параметры через двойную запятую (,,):
https://example.com/category?category,dresses,,sort,lowtohigh,,sid,789

Упростите структуру своих URL

Чтобы помочь Google (и вашим пользователям) сориентироваться на вашем сайте, мы рекомендуем создать простую структуру URL, по возможности следуя приведенным ниже рекомендациям.

Рекомендации

Используйте описательные URL

По возможности используйте в URL осмысленные слова, а не длинные цифровые идентификаторы.

Рекомендуется создавать простые описательные URL: Не рекомендуется использовать в URL длинные непонятные цифровые идентификаторы:
https://example.com/wiki/Aviation
https://example.com/index.php?topic=42&area=3a5ebc944f41daa6f849f730f1

Говорите на языке своей аудитории

Советуем использовать в URL слова, характерные для вашей аудитории, и транслитерацию. Например, если ваша аудитория выполняет поиск на немецком, используйте немецкие слова в URL:

https://example.com/lebensmittel/pfefferminz

А если ваша аудитория предпочитает японский, делайте то же и вы:

https://example.com/ペパーミント

При необходимости используйте кодировку UTF-8

При создании внутренних ссылок на сайте используйте в атрибутах href кодировку UTF-8. Незарезервированные символы ASCII можно не кодировать. Кроме того, символы, которые не входят в диапазон ASCII, должны быть в кодировке UTF-8. Пример:

Рекомендуется (кодировка UTF-8) Не рекомендуется (символы не из таблицы ASCII)
https://example.com/%D9%86%D8%B9%D9%86%D8%A7%D8%B9/%D8%A8%D9%82%D8%A7%D9%84%D8%A9
https://example.com/نعناع
https://example.com/%E6%9D%82%E8%B4%A7/%E8%96%84%E8%8D%B7
https://example.com/杂货/薄荷
https://example.com/gem%C3%BCse
https://example.com/gemüse
https://example.com/%F0%9F%A6%99%E2%9C%A8
https://example.com/🦙✨

Разделяйте слова дефисами

Мы рекомендуем по возможности разделять слова в URL, чтобы пользователи и поисковые системы лучше понимали назначение адресов. Советуем использовать для этого дефисы (-) вместо знаков подчеркивания (_). В свете сложившейся практики мы не советуем использовать символы подчеркивания. Дело в том, что они уже широко применяются при обозначении понятий, которые должны указываться вместе. Например, в различных языках программирования так именуются функции (такие как format_date).

Рекомендуется Не рекомендуется

Разделять слова дефисами (-):

https://example.com/summer-clothing/filter?color-profile=dark-grey

Разделять слова знаками подчеркивания (_):

https://example.com/summer_clothing/filter?color_profile=dark_grey

Объединять слова в URL:

https://example.com/greendress

Используйте как можно меньше параметров

По возможности укоротите URL, удалив из них параметры, которые не влияют на показ контента.

Учитывайте, что URL обрабатываются с учетом регистра

Так как мы следуем стандарту IETF STD 66, Google Поиск обрабатывает URL с учетом регистра (например, /APPLE и /apple считаются одним и тем же каталогом). Если ваш веб-сервер обрабатывает URL со строчными и прописными буквами одинаково, приведите все URL к одинаковому регистру. Так роботам Google будет проще разобраться в том, действительно ли определенные URL ведут на одну страницу.

Используйте геотаргетинг в URL

Если ваш сайт посещают люди из разных регионов, используйте такую структуру URL, которая позволит легко выделить фрагменты, указывающие на регион. Другие примеры структурирования URL можно найти в инструкции по указанию региона в URL.

Рекомендуется использовать домен страны:

https://example.de

Рекомендуется использовать подкаталог с указанием на страну:

https://example.com/de/

Устраните распространенные проблемы с URL

Если URL сайта слишком сложные, например содержат много параметров, то разные URL могут указывать на страницы с одним и тем же или похожим контентом. Это затрудняет сканирование. В результате робот Googlebot может создавать значительную нагрузку на ваш сервер. Кроме того, есть вероятность, что ему не удастся полностью просканировать весь контент сайта.

Наличие избыточного количества URL может быть связано с самыми разными факторами. Некоторые из них описаны ниже.

Распространенные проблемы

Добавочная фильтрация набора элементов.

На многих сайтах имеются разные представления одного и того же набора элементов или результатов поиска, с помощью которых пользователь может фильтровать его по определенным критериям (например, "показать гостиницы на побережье"). Если фильтры можно сочетать (например, "гостиницы на побережье с фитнес-центром"), на этих сайтах значительно увеличивается количество URL (представлений данных). Не обязательно создавать множество практически одинаковых списков гостиниц, поскольку роботу Googlebot достаточно изучить совсем небольшое количество списков, с помощью которых он сможет перейти на страницу каждой гостиницы. Пример:

  • Гостиницы по выгодной цене:
    https://example.com/hotel-search-results.jsp?Ne=292&N=461
  • Гостиницы по выгодной цене на побережье:
    https://example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240
  • Гостиницы с фитнес-центром по выгодной цене на побережье:
    https://example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240+4294967270

Нерелевантные параметры

Нерелевантные параметры в URL могут привести к появлению множества URL. Примеры:

  • Реферальные параметры:
    https://example.com/search/noheaders?click=6EE2BF1AF6A3D705D5561B7C3564D9C2&clickPage=OPD+Product+Page&cat=79
    https://example.com/discuss/showthread.php?referrerid=249406&threadid=535913
    https://example.com/products/products.asp?N=200063&Ne=500955&ref=foo%2Cbar&Cn=Accessories
  • Параметры для сортировки покупателями:
    https://example.com/results?search_type=search_videos&search_query=tpb&search_sort=relevance&search_category=25
  • Идентификаторы сеансов:
    https://example.com/search/noheaders?sessionid=6EE2BF1AF6A3D705D5561B7C3564D9C2

Заблокируйте доступ к проблемным URL для робота Googlebot с помощью файла robots.txt.

Проблемы, связанные с календарем

Динамически создаваемый календарь может генерировать ссылки на последующие и предшествующие даты без ограничения по началу и окончанию периода. Пример:

https://example.com/calendar.php?d=13&m=8&y=2011

Если на сайте есть бесконечный календарь, добавьте атрибут nofollow в ссылки на страницы, которые динамически создаются календарем и относятся к будущему.

Если разместить ссылку на родительский элемент не там, где следует, а ваш сервер не возвращает правильный код статуса HTTP для несуществующих страниц, это может создать бесконечные пространства адресов. Например, ссылка <a href="../../category/stuff">...</a> на странице с адресом https://example.com/category/community/070413/html/FAQ.htm может отправить робота по несуществующему адресу https://example.com/category/community/category/stuff. Чтобы избежать этого, используйте в своих ссылках абсолютные URL, а не относительные.

Что делать, когда структура URL препятствует сканированию

Если вы заметили, что роботы Google сканируют эти проблемные URL, советуем сделать следующее: