21
lug/08

Caratteri speciali nelle URL degli snippet sulle SERP di Google

snippet con apostrofo su google

Stavo cercando delle informazioni per organizzare la cena di MOCA e mi imbatto in questo post (tra l’altro di un blog molto conosciuto qui nel trevigiano).
Me lo leggo, guardo le foto, poi butto l’occhio sulla barra degli indirizzi del mio browser (Firefox 3.0.1 su Mac) e noto una cosa strana: un apostrofo.
Mi confronto con un paio di contatti ed effettivamente emerge che potrebbe trattarsi di una configurazione di sistema; allora, per curiosità, lancio questa query su Google e noto che l’apostrofo è stato preso pure dal motorone che lo stampa nello snippet di quel post.

L’avevate mai visto? A me risulta nuova come cosa. A voi?

Abbonati al Feed RSSSe questo post ti è piaciuto, puoi decidere di ricevere gratuitamente gli aggiornamenti del blog abbonandoti al Feed RSS. Clicca qui.

in Google · TrackBack URL

Commenti

Matteo scrive,

luglio 21, 2008 @ 19:55

si l’avevo notato qualche tempo fa su Wikipedia, ad esempio http://it.wikipedia.org/wiki/Ca'_d'Oro

stefano riga75 scrive,

luglio 22, 2008 @ 00:58

Caro Marcolino anche un mio url ha l’apostrofo e comprare in serp….perchè?
E’ strano tutto ciò?

marco scrive,

luglio 22, 2008 @ 09:07

Sì, onestamente mi suona strana la presenza di certi caratteri speciali nelle SERP. Anche perchè poi, nel browser, l’apostrofo viene sostituito con un “%27″.

Matteo scrive,

luglio 22, 2008 @ 10:51

Navigando tempo fa avevo letto che molto dipende dalla funzione di urlencode che si utilizza.

Mi spiego meglio la urlencode in javascript si basa sulla RFC 2396 ( http://www.ietf.org/rfc/rfc2396.txt ) per la quale “-” | “_” | “.” | “!” | “~” | “*” | “‘” | “(” | “)” sono considerati safe Ascii codes, quindi non è necessario effettuare alcuna conversione.

Mentre la rawurlencode in php, che si basa invece su una rfc più vecchia ( http://www.faqs.org/rfcs/rfc1738 ), ha un numero di safe Ascii codes minore e tende ad encodare molti più caratteri.

Infine la urlencode in php sembra un ibrido fra le due precedenti…

Se si prova ad encodare: Ca’ D’oro

si ha:

js urlencode: Ca’+D’oro
php urlencode: Ca%27+D%27Oro
python urlencode: Ca%27+D%27Oro
php rawurlencode: Ca%27%20D%27Oro

Quanto pare tutto sta a quale rfc ci si è “ispirati” per l’implementazione della func :(

marco scrive,

luglio 22, 2008 @ 12:06

@ Matteo
Notevole l’analisi. Complimenti. :)
La cosa che mi lascia perplesso è che sia Google ad aver digerito la cosa.
Cioè, a seconda della rfc, la mia URL può apparire in questa o quella maniera, naturalmente relativamente ai caratteri speciali; però nel momento in cui questa viene assimilata da Google è come se venisse cristallizzata, standardizzata.
D’ora in poi, tutti, indistintamente, la vedranno così.
Può essere che Google abbia modificato la sua rfc e questo implica che tutti, bene o male, ne risentiremmo (il che non ha accezione nè positiva nè negativa).
Beh, è una novità, no?

Andrea Vit scrive,

luglio 22, 2008 @ 12:59

Ciao Marco,
beh non c’è niente di strano, c’è sempre stata questa gestione…che siano caratteri tipo spazi, parentesi, accenti in generale, si tratta di caratteri non ASCII che vengono gestiti attraverso la conversione UTF-8 descritta dal W3C qui http://www.w3.org/International/O-URL-code.html .

In questi post avevo già afforntato un po’ la questione:
http://blog.tsw.it/programmazione/url-sef-e-caratteri-speciali-nelle-promozioni-multilingua/

http://www.andreavit.com/blog/seo/la-riscrittura-delle-url-ed-caratteri-speciali-versione-20.html

Un saluto.

marco scrive,

luglio 22, 2008 @ 14:22

Ciao Andrea,

grazie del contributo. Relativamente ai caratteri speciali che hai citato, effettivamente, nulla di nuovo. Non avevo invece notato la questione dell’apostrofo e, dopo aver visto lo screenshot sul tuo blog, pure quella della lettera accentata.

Grazie dei link e del commento. :)

Matteo scrive,

luglio 22, 2008 @ 14:49

Mah secondo me potrebbe anche essere che google non ha mai messo alcun filtro negli url, dando per scontato che in input avrebbe ricevuto sempre dati formattati secondo le specifiche.

Il fatto di aver quindi indicizzato url con ‘ dimostra inoltre che gli spider di google aderiscono alla rfc del ’98 dato che riesce a gestire e navigare gli url, altrettanto lo fanno i normali browser, quindi il dubbio è che la rfc in quanto non standard, non sò tipo ISO, è solo una sorta di consiglio tecnico a cui aderire e poi alla fin fine ognuno è libero di far quello che gli pare.

Altra cosa cui bisogna pensare è l’imminente sperimentazione dei domini scritti con caratteri locali, se google nella fase di verifica e inserimento dei dati nel suo aderisse 1:1 alla rfc tutti i nuovi url saranno illeggibili…

Ribadisco l’impressione iniziale, secondo me non hanno mai posto alcun filtro speranzosi nel fatto che tutti aderissero alla rfc del 94…

Andrea Vit scrive,

luglio 22, 2008 @ 16:03

@Matteo
Se però la tecnica è definita dal W3C, di fatto è uno standard de facto per il web, no?

Concordo sul fatto che non sia ISO, ma alla fine è una derivazione di uno standard ed è di fatto la codifica che va per la maggiore per la rappresentazione dei dati sul web.

In realtà Google non ha regole sue, nella maggior parte dei casi usa quelle del W3C.

Matteo scrive,

luglio 22, 2008 @ 16:40

@Andrea, da quel che ho capito il w3c supporta l’ultima release del 2005 ( http://www.ietf.org/rfc/rfc3987.txt ) delle rfc sulla gestione dei nomi a dominio e url.

Nella pagina del w3c dedicata ( http://www.w3.org/Addressing/#background ) hanno per altro, sempre nel 2005, creato una sorta di gruppo di ricerca.

Certo è che leggendo l’ultimo rfc si trova:

unreserved = ALPHA / DIGIT / “-” / “.” / “_” / “~”
reserved = gen-delims / sub-delims
gen-delims = “:” / “/” / “?” / “#” / “[" / "]” / “@”
sub-delims = “!” / “$” / “&” / “‘” / “(” / “)”
/ “*” / “+” / “,” / “;” / “=”

dove teoricamente ad esclusione di alcuni caratteri, tutti gli altri sono comunemente usati negli url http o f tp.

quindi a prima vista direi che si potrebbero scrivere url anche contenenti *, !, $ e google dovrebbe indicizzarli e leggerli…

Matteo scrive,

luglio 22, 2008 @ 16:51

@Andrea,

da quel che ho capito il w3c “supporta”, o almeno così dichiarano, rfc quindi si teoricamente si tratta di uno standard.

Tra l’altro guardando la pagina del w3c si parla di un’adesione dal 2005, anno in cui hanno creato anche un comitato per parlare di questi problemi ( http://www.w3.org/TR/uri-clarification/ )

L’ultima rfc in merito è del 2005, ma il documento del w3c fa ancora riferimento alla rfc del 1998 dove si dice:

Data characters that are allowed in a URI but do not have a reserved
purpose are called unreserved. These include upper and lower case
letters, decimal digits, and a limited set of punctuation marks and
symbols.

unreserved = alphanum | mark

mark = “-” | “_” | “.” | “!” | “~” | “*” | “‘” | “(” | “)”

Unreserved characters can be escaped without changing the semantics
of the URI, but this should not be done unless the URI is being used
in a context that does not allow the unescaped character to appear.

Quindi teoricamente tutti questi definiti mark + tutti gli alfanumerici possono essere inseriti in un url sia in maniera encodata che visibile, all’infuori dell’utilizzo in un url nel quale è necessario fare l’escape del contenuto (vedi querystring)

I post più letti del 2008 scrive,

gennaio 2, 2009 @ 18:00

[...] Caratteri speciali nelle URL degli snippet sulle SERP di Google; [...]

Lascia un commento

Forse potranno interessarti...

.