In inglese si chiama case sensitivity, anche se forse abbiamo più familiarità con l’espressione case sensitive, ed è un aspetto forse trascurato quando si costruisce un sito e, in particolare, si studia la struttura degli URL: si tratta, cioè, della distinzione (o meno) tra lettere maiuscole e minuscole, che può aprire a scenari differenti e conseguenze complicate per i nostri sforzi SEO.

Cosa significa case sensitive in informatica

L’espressione inglese case sensitivity, traducibile in italiano come sensibilità alle maiuscole, indica ogni operazione di analisi del testo in cui le lettere maiuscole e quelle minuscole vengono trattate come fossero caratteri completamente differenti. Pertanto, due parole apparentemente uguali – come Zucchero e zucchero – sono in realtà diverse per l’uso della lettera maiuscola o minuscola – nell’esempio, il primo termine fa riferimento al cantautore italiano, mentre l’altro al comune prodotto alimentare.

Esempi di distinzione tra maiuscole e minuscole

Nel mondo informatico ci sono alcuni ambiti e linguaggi case sensitive (che discernono la differenza tra i caratteri maiuscoli e minuscoli), mentre altri sistemi sono case insensitive o non-case sensitive.

Alcuni linguaggi di programmazione, come BASIC, Pascal e ASP, sono ad esempio case insensitive, mentre invece altri come Java, C, C++ e Python sono case sensitive: in questo secondo caso, scrivere una parola usando maiuscole o minuscole fa differenza.

Anche i sistemi operativi possono essere case sensitive o meno: tra quelli che non fanno distinzione ci sono MS-DOS e Microsoft Windows, che considerano equivalenti le due forme e accetta in maniera indifferente i comandi, sia in lettere maiuscole che minuscole. Al contrario, il sistema operativo Linux è sensibile alla differenza tra caratteri maiuscoli e minuscoli: siccome la maggior parte dei server web si basa proprio su sistemi Unix, per molti siti può esserci differenza tra due pagine come «index.html» e «INDEX.HTML».

Questa distinzione vale anche per la gestione dei nomi dei file: Microsoft Windows non differenzia maiuscole e minuscole (anche se mantiene la distinzione nella maggior parte dei file system), mentre i sistemi operativi Unix trattano i nomi dei file in modo sensibile al maiuscolo/minuscolo.

Ancora diverso il caso degli URL, dove il percorso, la query, il frammento e le sezioni di autorità possono o meno fare distinzione tra maiuscole e minuscole, a seconda del server web ricevente; ad ogni modo, per convenzione, lo schema e le parti host sono rigorosamente minuscole.

Sempre a proposito di URL, possiamo dire che per natura i nomi di dominio o host sono trattati in minuscolo sia dai browser che dai server DNS (e quindi sono in pratica case insensitive); al contrario, i percorsi (il testo dopo la prima barra) sono case sensitive, anche se molti siti web normalizzano anche questa parte impostando automaticamente le minuscole.

Google è case sensitive? Attenzione ai caratteri

La gestione della case sensitivity interessa quindi anche la SEO e l’ottimizzazione del sito, soprattutto se vogliamo evitare errori ed essere certi che utenti e crawler dei motori di ricerca riescano a raggiungere correttamente le nostre pagine.

È John Mueller a introdurre questo argomento e spiegare qual è l’approccio di Google agli elementi case sensitive, in particolare negli URL: in estrema sintesi, il motore di ricerca è sensibile alla distinzione tra maiuscole e minuscole, ma è ancora più rigorosa la ortografia degli indirizzi inseriti all’interno dei file robots.txt e per i redirect, che sono case sensitive: quando scriviamo le regole di reindirizzamento, in particolare, non dobbiamo trascurare di rispettare la sintassi corretta.

Google e URL: come sono trattate maiuscole e minuscole

Non è una sorpresa scoprire che per Google le variazioni di caso (e quindi l’uso di maiuscole o minuscole) possono rendere un URL diverso da un altro, in modo simile a come un URL con un trailing slash o barra finale è diverso da un URL senza barra, e possono provocare alcuni problemi SEO come una pagina orfana o un contenuto duplicato.

In pratica, inserire una lettera maiuscola all’interno del percorso di un URL crea, di fatto, un nuovo URL.

Pertanto, Mueller conferma che l’uso di caratteri maiuscoli o minuscoli ha un valore per Google, che è case sensitive: due URL potrebbero sembrare uguali e persino portare allo stesso contenuto, ma possono essere trattati come URL diversi se uno ha una lettera maiuscola e l’altro no.

Per definizione, infatti, “gli URL fanno distinzione tra maiuscole e minuscole” e quindi anche un elemento così apparentemente banale “conta e può rendere gli URL diversi”.

La canonicalizzazione delle versioni separate di un URL

In realtà, quando si trovano di fronte a URL che si differenziano per uso di maiuscole e minuscole, i motori di ricerca cercano di capire autonomamente se le pagine fanno riferimento allo stesso contenuto, risolvendo quindi il problema.

Tuttavia, anche se gestito in modo automatico, questo processo non è ideale per il sito, perché Google potrebbe impiegare più tempo per scoprire e indicizzare i contenuti: ad esempio, spiega il Search Advocate della compagnia, “i motori di ricerca proveranno a eseguire la scansione di tutte le varianti dell’URL che trovano”, e questo può rallentare la ricerca di altri contenuti utili sul sito web.

Quando incontra più versioni distinte di URL che mostrano lo stesso contenuto, Google avvia un processo chiamato canonicalizzazione, attraverso cui decide quale URL mantenere nelle SERP, consolidando tutti i segnali delle altre versioni in quell’URL; la pagina che finisce per essere visualizzata nei risultati di ricerca è nota come URL canonico.

La canonicalizzazione non è esattamente un “problema” per il sito e per il suo ranking, ma è bene ricordare che i sistemi di Google potrebbero scegliere un URL differente da quello che avremmo scelto noi come prioritario, e quindi può impattare in qualche modo sui rendimenti, oltre ad avere effetti sul crawl budget.

Possiamo segnalare a Google quale versione di un URL desideriamo sia mostrata nei risultati di ricerca in due modi (anche complementari): usando link interni in modo coerente per puntare proprio a quella versione e aggiungere il link rel=”canonical”, elemento che aiuta a confermare la scelta e incoraggia i motori di ricerca a concentrarsi su quella versione.

Il file robots.txt è case sensitive

Più problematica è la mancata cura nell’uso di maiuscole e minuscole all’interno del file robots.txt, dove l’URL esatto gioca un ruolo cruciale: questo documento, in cui possiamo “segnalare quali parti di un sito web non devono essere sottoposte a scansione“, come ricorda Mueller, utilizza URL esatti.

Ciò significa che non curare la sintassi e l’ortografia è un errore grave per il file robots, perché se inseriamo solo una delle voci che fanno riferimento a una versione di un URL, le istruzioni non si applicherebbero ad altre versioni di quell’URL. Più in generale, è opportuno controllare con attenzione che tutti i dati (directory, subdirectory e nomi dei file) siano scritti senza mescolare maiuscole e minuscole in modo non opportuno.

Un problema risolvibile per la SEO

Ad ogni modo, è sempre Mueller a rincuorarci e tranquillizzarci: in fin dei conti, la case sensitivity su Google è un aspetto che “non è così fondamentale per un sito web”, anche se è una best practice essere coerenti nel modo in cui usiamo le maiuscole e le minuscole negli URL.

Sospiro di sollievo anche per la gestione degli URL nei file robots, perché è sempre il Search Advocate a rivelare che “è raro che vediamo che la case sensitivity causi problemi”.