Влияние SEO на многоязычный сайт с обнаружением системной культуры

Я разработал многоязычный сайт в ASP.NET, который обнаруживает культуру пользовательской системы и отображает контент на соответствующем языке.

Все это хорошо работает, но с моего клиента у меня был аудит SEO. Агентство SEO выразило обеспокоенность тем, что это не очень хорошая практика SEO, поскольку для каждого языка нет уникальных URL.

Они предположили, что сайт может быть обвинен в маскировке, и что Google не может индексировать сайт правильно для каждого другого языка.

Любые идеи относительно того, являются ли они действительными проблемами, и есть ли преимущество наличия уникальных URL-адресов для каждой языковой версии сайта?

Ответ 1

Несмотря на то, что вы сделали красивую работу, переключая язык автоматически, Агентство SEO правильно!

Чтобы Google не мог правильно индексировать сайт для каждого разного языка.

Это правда! Google не отправляет заголовок accept-language в последний раз, когда я проверил. Это означает, что Google будет индексировать только язык по умолчанию.

Они предположили, что сайт может быть обвинен в маскировке,

Это отличается от вашей реализации Excact, но возможно, ваш сайт получит штраф!

Преимущество имеет уникальные URL-адреса (для каждой языковой версии) на сайте!
Прежде всего, для ваших пользователей: они могут ссылаться на язык, который они предпочитают. Вторичный для поисковых систем, так как они могут правильно индексировать ваш сайт.

Я советую большую часть времени перенаправить пользователя только на домашнюю страницу для языкового коммутатора, используя перенаправление 302 на правильный URL (и, следовательно, правильный язык). (редактирование: вы можете просмотреть сообщение Мэтт Каттс "Советы по SEO: обсуждение 302 перенаправления" )

Чтобы проверить мой совет: установите fiddler и перейдите в http://www.ibm.com. Как показано ниже, я получил перенаправление 302 на соответствующий язык, прибыв на сайт www.ibm.com/be/en.

    Result  Protocol    Host    URL Body    Caching Content-Type    
4   302 HTTP    www.ibm.com /   209     text/html
5   200 HTTP    www.ibm.com /be/en/ 5.073   no-cache  text/html;charset=UTF-8

Есть несколько решений, которые вы можете решить:

  • Начать переписывание адресов (добавление, например, каталога с использованием языка)
  • Если вы не хотите перебирать лишние каталоги (или переписывать url), добавление QueryString будет самым простым решением (хотя попытайтесь ограничить их максимум двумя параметрами).
  • Другой вариант - использование разных поддоменов! www.website.com для языка по умолчанию, es.website.com, fr.website.com

Просто убедитесь, что вы поставляете каждый раз один и тот же контент для одного и того же URL-адреса.

Удачи вам!

Ответ 2

Будем надеяться, что некоторые люди ответят, кто знает о внутренностях Google (кто-нибудь?). Но большинство предположений о том, как искатели Google и других являются... предположениями и могут быть изменены.

Я предполагаю, что вы должны использовать отдельные URL-адреса для языков, даже если они имеют разницу ?language= (хотя лучше было бы по-настоящему другим URL-адресом). Я верю в это, потому что, когда вы идете в google.it, он говорит, google.com in English и эта ссылка идет... google.com. Другими словами, сам Google использует разные URL-адреса для разных языков.

Кроме того, еще один крупный сайт Microsoft (они, вероятно, знают о SEO) использует

http://www.microsoft.com/en/us/default.aspx

для англо-английского и

http://www.microsoft.com/it/it/default.aspx

для итальянско-итальянского, поэтому, вероятно, лучше всего различать на основе языка (и страны).

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