Уважают ли поисковые системы поле заголовка HTTP «Content-Location»? - PullRequest
13 голосов
/ 13 января 2009

Мне было интересно, уважают ли поисковые системы поле заголовка HTTP Content-Location.

Это может быть полезно, например, когда вы хотите удалить аргумент идентификатора сеанса из URL:

GET /foo/bar?sid=0123456789 HTTP/1.1
Host: example.com
…

HTTP/1.1 200 OK
Content-Location: http://example.com/foo/bar

Пояснение:
Я не хочу перенаправлять запрос, так как удаление идентификатора сеанса приведет к совершенно другому запросу и, следовательно, к другому ответу. Я просто хочу заявить, что вложенный ответ также доступен по его «основному URL».

Может быть, мой пример не был хорошим представлением цели моего вопроса. Поэтому, пожалуйста, посмотрите на Какова цель поля заголовка HTTP «Content-Location»? .

Ответы [ 5 ]

7 голосов
/ 13 февраля 2009

Я думаю, что Google только что объявил ответ на мой вопрос: ссылка canonical для объявления канонического URL .

Maile Ohye от Google написал:

Микки сказал: ...
Вместо этого вы должны были использовать заголовок Content-Location согласно:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
«14.14 Content-Location»

@ MikeyC: Да, с теоретической точки зрения это имеет смысл, и мы, безусловно, рассмотрели это. Однако несколько моментов побудили нас выбрать:

  1. Наши данные показали, что заголовок «Content-Location» неправильно настроен на многих веб-сайтах. Иногда веб-мастера предоставляют длинные, уродливые URL-адреса, которые даже не дублируются - это, вероятно, непреднамеренно. Они, вероятно, не знают, что их веб-сервер даже отправляет заголовок Content-Location.

    Было бы очень сложно связаться с владельцами сайтов, чтобы устранить проблемы с размещением контента в Интернете. Мы поняли, что если бы мы начали с чистого листа, мы могли бы обеспечить функциональность быстрее. С Microsoft и Yahoo! для поддержки этого формата веб-мастерам необходимо изучить только один синтаксис.

  2. Часто веб-мастера испытывают трудности с настройкой заголовков своих веб-серверов, но им проще изменить свой HTML. rel = "canonical" выглядел как дружественный атрибут.

http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html?showComment=1234714860000#c8376597054104610625

1 голос
/ 13 января 2009

Большинство достойных сканеров следуют Content-Location. Так что да, поисковые системы уважают заголовок Content-Location, хотя это не гарантирует, что URL с параметром sid не будет на странице результатов.

0 голосов
/ 24 июля 2014

В 2009 году Google начал просматривать URI, квалифицированные как rel=canonical в теле ответа.

Похоже, что с 2011 года ссылки, отформатированные в соответствии с RFC5988, также анализируются из поля заголовка Link:. Он также четко указан в FAQ по инструментам для веб-мастеров в качестве допустимой опции.

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

0 голосов
/ 18 января 2009

В дополнение к использованию «Location» вместо «Content-Location» используйте правильный код состояния HTTP в своем ответе в зависимости от причины вашего перенаправления. Поисковые системы обычно предпочитают статус постоянного перенаправления (301), а не временный (302).

0 голосов
/ 15 января 2009

Попробуйте вместо этого заголовок "Location:".

...