2009-01-13 17 views
13

Zastanawiam się, czy wyszukiwarki odnoszą się do HTTP header field Content-Location.Czy wyszukiwarki szanują pole nagłówka HTTP "Content-Location"?

Może to być przydatne, na przykład, gdy chcemy usunąć argument identyfikator sesji z adresu URL:

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

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

Wyjaśnienie:
Nie chcę aby przekierować żądanie, ponieważ usunięcie identyfikatora sesji doprowadziłoby do zupełnie innego żądania, a zatem prawdopodobnie również do innej odpowiedzi. Chcę tylko powiedzieć, że załączona odpowiedź jest również dostępna pod jej "głównym adresem URL".

Być może mój przykład nie był dobrym odzwierciedleniem intencji mojego pytania. Więc proszę spojrzeć na What is the purpose of the HTTP header field “Content-Location”?.

+0

Czy to nie jest zbytnim celem dla Content-Location? Specyfikacja sprawia, że ​​brzmi to tak, jakby różnica powinna być większa niż tylko ciąg zapytania. –

+0

Usunięcie zapytania było tylko przykładem. Możliwe jednak, że źle zrozumiałem cel Content-Location i nie zapewniam prawdziwej lokalizacji żądanego zasobu. – Gumbo

+0

Myślę, że to jest dokładny cel, ale myślę, że pomysł byłby bardziej podobny do U2: http://foo.com/listOfStuff/indexOfResult (w zasadzie, identyfikowanie konkretnego członka kolekcji) Content-Location: http: // foo.com/path/to/individualItem (w zasadzie bezpośredni URI do zasobu) Myślę, że twój pomysł jest w porządku, tho. –

Odpowiedz

7

Myślę, że Google właśnie ogłosił odpowiedź na moje pytanie: the canonical link relation for declaring the canonical URL.

Maile Ohye Google napisał:

MickeyC powiedział ...
Trzeba stosować nagłówek Content-Location zamiast, jak za:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
"14.14 Content-Location"

@MikeyC: Tak, z teoretycznego punktu widzenia, który ma sens i z pewnością to. Kilka punktów, jednak doprowadziło nas do wyboru:

  1. Nasze dane wskazują, że „Content-Location” nagłówek jest niewłaściwie skonfigurowany na wielu stronach internetowych. Czasami webmasterzy zapewniają długie, brzydkie adresy URL, które nie są nawet duplikatami - prawdopodobnie jest to nieumyślne. Prawdopodobnie nie zdają sobie sprawy, że ich serwer wysyła nawet nagłówek Content-Location.

    Byłoby bardzo czasochłonne skontaktowanie się z właścicielami witryn w celu rozwiązania problemów związanych z Content-Location w Internecie. Zdaliśmy sobie sprawę, że jeśli zaczniemy od czystej karty, możemy szybciej zapewnić jej funkcjonalność. Z Microsoft i Yahoo! na pokładzie, aby obsługiwać ten format, webmasterzy muszą nauczyć się tylko jednej składni.

  2. Często webmasterzy mają problemy z konfiguracją nagłówków serwerów, ale mogą łatwiej zmienić swój kod HTML. rel = "canonical" wydawało się przyjaznym atrybutem.

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

+0

Wspaniale, aby zobaczyć wsparcie kanoniczne link z google! –

1

Większość przyzwoitych robotów śledzi lokalizację treści. Tak, więc wyszukiwarki traktują nagłówek Content-Location, chociaż nie ma gwarancji, że adres URL z parametrem sid nie będzie widoczny na stronie wyników.

-3

Zamiast tego spróbuj nagłówka "Lokalizacja:".

+0

To przekierowuje, którego pytający nie chce się wydarzyć. – ceejayoz

-1

Oprócz używania opcji "Lokalizacja", a nie "Zawartości zawartości", należy użyć odpowiedniego kodu statusu HTTP w odpowiedzi, w zależności od przyczyny przekierowania. Wyszukiwarki preferują status stałego przekierowania (301) w porównaniu do statusu tymczasowego (302).

+1

"Lokalizacja:" przekierowanie. 'Content-Location:' bez przekierowania, podając adres kanoniczny. – Piskvor

0

W 2009 roku Google zaczął patrząc na URI zakwalifikowane jako rel=canonical w organizmie reakcji.

Wygląda na to, że od 2011 r. Linki sformatowane zgodnie z dokumentem RFC5988 to also parsed from the header field Link:. Jest to również wyraźnie wymienione w Webmaster Tools FAQ jako ważna opcja.

Domyślam się, że jest to najbardziej aktualny sposób na udostępnienie wyszukiwarkom hiperdialnej bułki tartej - aby w ten sposób utrzymać ich poza ciałem odpowiedzi, gdy nie trzeba jej podawać jako treści. .