Многоязычный SEO и одностраничное приложение


У меня есть веб-сайт (одностраничное приложение) в VueJS, и я хочу реализовать локализованные версии с такими URL-адресами:

Я пытаюсь выяснить, могу ли я перенаправить пользователя на его локальную версию в зависимости от его Accept-Language

Google предлагает:

Избегайте автоматического перенаправления на основе воспринимаемый язык пользователя. Эти перенаправления могут помешать пользователям (и поисковым системам) просматривать все версии вашего сайта

Однако это похоже на некоторые сайты (например, Microsoft, TeamViewer) сделайте это с помощью 302 перенаправления HTTP.

Я также рассматриваю возможность перенаправления с помощью метода JavaScript pushState (изменение URL-адреса без перезагрузки страницы).

Итак, мои вопросы таковы:

  • перенаправление на личный язык пользователя версия вредит SEO?
  • какой метод перенаправления был бы предпочтительнее (перенаправление HTTP 301, перенаправление HTTP 302, JavaScript pushState)?
Author: Oleg, 2020-03-13

1 answers

Для SEO может быть полезно перенаправить базовый URL домена на язык, основанный на заголовке Accept-Language. Единственными проблемами SEO являются:

  • Проверьте свои правила на случай, если в заголовке языка не указан один из поддерживаемых вами языков.
  • Проверьте свои правила на отсутствие заголовка Accept-Language, отправленного вообще. (Большинство ботов не отправят ни одного).
  • Вам нужна резервная страница с надписью "Выберите свой язык", на которой есть ссылки на ваш сайт на каждом поддерживаемом языке. Тебе не следует реализовать на языке перенаправления по умолчанию. Это гарантирует, что боты будут знать обо всех ваших языках и в конечном итоге не будут массово отдавать предпочтение одному из них.
  • Вам следует по возможности избегать ссылок на ваш базовый домен. Ссылка непосредственно на подкаталог языка, если язык известен. Не должно быть внутренних ссылок на ваш базовый домен без языкового каталога, и любые внешние ссылки, которыми вы управляете, должны включать языковой каталог.
  • Лучше всего было бы использовать 302 Temporary перенаправление для этой цели, потому что это будет понятно всем ботам. Изменение URL-адреса с помощью JavaScript может работать для Google, но вряд ли будет работать для других поисковых систем.

Другие проблемы SEO с языковыми перенаправлениями возникают из-за разногласий между языком, указанным в URL-адресе, и заголовком Accept-Language. Если вы перенаправите с языка в URL-адресе из-за заголовка Accept-Language, это расстроит некоторых пользователей. Заголовок Accept-Language во многих случаях может быть неправильным. Смотрите Как должен ли я структурировать свои URL-адреса как для SEO, так и для локализации:

  • У многих пользователей этот заголовок установлен неправильно. Это особенно актуально для пользователей, выезжающих за границу, которые могут пользоваться компьютером друга или интернет-кафе. Это также часто верно для международных пользователей, которые устанавливают веб-браузер на английском языке и знают достаточно английского, чтобы ориентироваться, но предпочли бы контент на другом языке.
  • Google только что объявил, что Googlebot отправит заголовок Accept-Language и обход из разных географических местоположений . Тем не менее, Google по-прежнему рекомендует использовать отдельные URL-адреса для контента на разных языках.
  • Вы можете использовать заголовок Accept-Language, чтобы предположить, что пользователи могут предпочесть другую версию сайта, отображая сообщение, когда сайт, который они посещают, не соответствует заголовку Accept-Language.
 1
Author: Stephen Ostermiller, 2020-03-14 13:06:26