Moja strona główna może być potencjalnie połączona jako:
http://example.com
http://example.com/
http://example.com/?ref=1
http://example.com/index.html
http://example.com/index.html?ref=2
(the same page is served for all those URLs)
Zastanawiam się nad zdefiniowaniem kanonicznego adresu URL, aby mieć pewność, że Google nie uzna tych adresów URL za różne strony:
<link rel="canonical" href="/webmasters//" /> (relative)
<link rel="canonical" href="http://example.com/" /> (trailing slash)
<link rel="canonical" href="http://example.com" /> (no trailing slash)
Którego należy użyć? Po prostu bym klapnął, /
ale mieszanie się z kanoniką wydaje się przerażające, więc najpierw chciałem sprawdzić dwukrotnie.
Czy to w ogóle dobry pomysł na zdefiniowanie kanonicznego adresu URL strony głównej?
Odpowiedzi:
Zgodnie z RFC 2616 (HTTP / 1.1), sekcja 3.2.2 , adresy URL
http://www.example.com
ihttp://www.example.com/
są one równoważne, a klienci HTTP muszą znormalizować te pierwsze do tych drugich przed wysłaniem żądania do serwera:gdzie sekcja 5.1.2 mówi:
RFC 3986 (ogólna składnia URI) potwierdza to w sekcji 6.2.3, Normalizacja oparta na schemacie , zauważając, że:
Technicznie rzecz biorąc, normalizacja opisana w RFC 3986 sekcja 6.2.3 jest opcjonalna dla implementacji, które np. Jedynie indeksują adresy URL, chociaż RFC 2616 nakłada obowiązek dla klientów, którzy faktycznie chcą wysyłać żądania HTTP. Mimo to, biorąc pod uwagę, że norma zezwala na taką normalizację, a biorąc pod uwagę, że wyszukiwarki generalnie nie chcą celowo dodawać duplikatów do swoich indeksów, można być pewnym, że prawie wszystkie wyszukiwarki będą normalizować wszystkie te adresy URL, aby były takie same.
Tak więc, nie ma różnicy, albo przeglądarek lub wyszukiwarek czy używasz
http://www.example.com
lubhttp://www.example.com/
. Są równoważne.źródło
http://www.example.com
ihttp://www.example.com/
może być równoważny, alehttp://www.example.com/
jest kanoniczny, ponieważ właśnie na to URI trzeba znormalizować. Więc użyłbym go w kanonicznym metatagu.