URL canonico per una home page e barre finali


14

La mia home page potrebbe essere potenzialmente collegata come:

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)

Sto pensando di definire un URL canonico per assicurarmi che Google non consideri tali URL come pagine diverse:

<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)

Quale dovrebbe essere usato? Vorrei solo schiaffeggiare, /ma scherzare con il canonico sembra un affare spaventoso, quindi prima volevo ricontrollare.

È una buona idea per definire un URL canonico per una home page?



Risposte:


14

Secondo RFC 2616 (HTTP / 1.1), sezione 3.2.2 , gli URL http://www.example.come http://www.example.com/sono equivalenti, ei client HTTP devono normalizzare il primo a quest'ultimo prima di inviare la richiesta al server:

"Se abs_path non è presente nell'URL, DEVE essere indicato come" / "se utilizzato come URI richiesta per una risorsa ( sezione 5.1.2 )."

dove la sezione 5.1.2 dice:

"Nota che il percorso assoluto non può essere vuoto; se nessuno è presente nell'URI originale, DEVE essere indicato come" / "(la radice del server)."

RFC 3986 (Sintassi generica URI) lo conferma nella sezione 6.2.3, Normalizzazione basata sullo schema , rilevando che:

"Ad esempio, poiché lo schema" http "utilizza un componente di autorità, ha una porta predefinita di" 80 "e definisce un percorso vuoto equivalente a" / ", i seguenti quattro URI sono equivalenti:

    http://example.com
    http://example.com/
    http://example.com:/
    http://example.com:80/

In generale, un URI che utilizza la sintassi generica per l'autorità con un percorso vuoto dovrebbe essere normalizzato in un percorso di "/". Allo stesso modo, un ": port" esplicito, per il quale la porta è vuota o il valore predefinito per lo schema, è equivalente a uno in cui la porta e il suo delimitatore ":" sono elisi e pertanto devono essere rimossi mediante la normalizzazione basata su schema. Ad esempio, il secondo URI sopra è il modulo normale per lo schema "http". "

Tecnicamente, la normalizzazione descritta nella sezione 6.2.3 di RFC 3986 è facoltativa per implementazioni che, ad esempio, si limitano a indicizzare gli URL, sebbene RFC 2616 renda obbligatorio per i clienti che desiderano effettivamente inviare richieste HTTP. Tuttavia, dato che lo standard consente tale normalizzazione e dato che i motori di ricerca generalmente non vogliono aggiungere deliberatamente duplicati al loro indice, si può essere ragionevolmente sicuri che quasi tutti i motori di ricerca normalizzeranno tutti quegli URL allo stesso modo.

Pertanto, non fa alcuna differenza né per i browser né per i motori di ricerca, sia che si utilizzi http://www.example.como http://www.example.com/. Sono equivalenti.


5
http://www.example.come http://www.example.com/può essere equivalente, ma http://www.example.com/è quello canonico perché è ciò a cui gli URI devono essere normalizzati. Quindi lo userei nel meta tag canonico.
Stephen Ostermiller
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.