Должен ли я использовать 301 для внутренних перенаправлений? - PullRequest
3 голосов
/ 15 июля 2010

Мы хотели бы перенаправить на локализованную версию нашей веб-страницы, если обнаружен IP-адрес из определенной страны. Мы используем ASP.Net, GeoLite Country Db (это очень маленькая, загружаемая БД объемом 1 МБ на момент написания этого вопроса).

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

Вопрос: , если www.example.com по умолчанию отображает default.aspx, должны ли мы (если мы обнаружим, что IP-адрес является "локальным"):

  1. Используйте "301 Moved Permanently" и перенаправьте его, скажем, на www.example.com/local.aspx, или

  2. Просто визуализируйте соответствующий контент внутри default.aspx?

Мы хотели бы знать, есть ли какие-либо побочные эффекты с SEO или подобные проблемы с любым из подходов?

Ответы [ 2 ]

2 голосов
/ 15 июля 2010

Возможно, это не лучшее решение.

В википедии говорится, что для разных языков нужно использовать 300:

http://en.wikipedia.org/wiki/URL_redirection

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.1

Стандарт HTTP определяет несколько кодов состояния для перенаправления:

* 300 multiple choices (e.g. offer different languages)
* 301 moved permanently
* 302 found (originally temporary redirect, but now commonly used to specify redirection for unspecified reason)
* 303 see other (e.g. for results of cgi-scripts)
* 307 temporary redirect
1 голос
/ 15 июля 2010

Я бы просто доставил локализованное содержимое local.aspx и отправил бы соответствующее Content-Location со ссылкой на local.aspx вместе с этим.

Или, если вы хотите перенаправить, используйте код состояния 307, чтобы указать временное перенаправление.

...