Indicizzabilità: robots.txt e meta robots
Cosa sono il file robots.txt e i meta tag robots?
robots.txt è un file di testo semplice che si trova nella directory principale del sito (ad es. https://example.com/robots.txt) e indica ai bot dei motori di ricerca quali directory o pagine possono essere scansionate (crawl). Il tag meta robots, invece, si trova nella sezione HTML <head> e controlla se una pagina, anche se è stata scansionata, debba essere indicizzata o meno nei risultati di ricerca. I due funzionano a livelli diversi: uno risponde alla domanda «puoi entrare da questa porta?», l’altro a «una volta entrato, puoi aggiungere questa stanza al catalogo?».
Questa distinzione viene spesso confusa perché entrambe rientrano nell’ambito della “gestione dei bot”, ma i loro ambiti di applicazione sono completamente diversi e una combinazione errata può portare a risultati indesiderati.
Il file robots.txt è in realtà una «richiesta di regole», non una misura di sicurezza: i bot ben intenzionati (come Googlebot) rispettano queste regole, ma quelli malintenzionati possono ignorare completamente il file. Pertanto, cercare di “nascondere” contenuti riservati o sensibili tramite il file robots.txt è un presupposto errato in materia di sicurezza.
Perché è importante?
Confondere questi due meccanismi può compromettere gravemente la visibilità del sito. Se una pagina viene bloccata alla scansione tramite il file robots.txt, il motore di ricerca potrebbe non vedere mai il tag noindex — poiché per vederlo deve prima eseguire la scansione della pagina — e la pagina potrebbe rimanere erroneamente nell’indice (di solito come voce senza titolo né descrizione).
Se utilizzati correttamente, invece, questi due strumenti consentono di gestire con precisione quali contenuti appariranno nei risultati di ricerca: il file robots.txt allontana il budget di scansione dalle aree irrilevanti (ad es. pannello di amministrazione, pagine dei risultati di ricerca), mentre il meta tag robots garantisce che determinate pagine (ad es. pagina di ringraziamento, varianti di elenchi filtrati) vengano rimosse dall’indice.
Nei siti di grandi dimensioni, il budget di scansione è una risorsa limitata: ad ogni visita, il bot scansiona solo una parte del sito. Bloccare le aree di scarso valore (ad es. pagine dei risultati di ricerca interna, combinazioni di filtri) tramite il file robots.txt consente al bot di dedicare il proprio tempo alle pagine davvero importanti.
Come risolvere il problema?
- Bloccate tramite il file robots.txt solo le directory che non volete davvero vengano scansionate (ad es. pannelli di amministrazione, pagine del carrello).
- Se volete rimuovere una pagina dall’indice, non fatelo tramite il file robots.txt: utilizzate invece il tag
<meta name="robots" content="noindex">. - Ricordate che, affinché `noindex` funzioni, la pagina deve essere accessibile alla scansione tramite il file `robots.txt`.
- Adottate il principio dell’unica fonte di verità: non ripetete lo stesso segnale in modo contraddittorio utilizzando più metodi.
- Controllate regolarmente il file robots.txt; potrebbero esserci restrizioni di test o staging rimaste per errore nell’ambiente live.
- Utilizzate il rapporto sulla copertura (coverage) in Google Search Console per verificare regolarmente quali pagine sono contrassegnate come "non scansionate" o "escluse a causa di noindex".
Esempio
User-agent: *
Disallow: /admin/
Allow: /
<meta name="robots" content="noindex, follow">
Esempio negativo: bloccare prima una pagina Disallow: /kampanya/ nel file robots.txt e poi aggiungere l’etichetta "noindex" alla pagina stessa <meta name="robots" content="noindex"> — poiché il bot non la scansionerà mai, il tag noindex è inefficace e la pagina potrebbe comunque apparire nell’indice.
Errori comuni
Disallow: /e chiudere inavvertitamente l’intero sito alla scansione.- Bloccare una pagina sia tramite il file robots.txt sia aggiungendo il tag noindex (il tag non viene mai rilevato, la pagina potrebbe rimanere nell’indice).
- Dimenticare di trasferire il file robots.txt restrittivo dall’ambiente di test/staging al sito live.
- Aggiungere per errore pagine importanti all’elenco Disallow.
- Trasferire le vecchie regole del file robots.txt al nuovo sito dopo un trasferimento o una riprogettazione senza averle riviste; una restrizione che aveva senso nel vecchio sito potrebbe includere anche pagine importanti nella nuova struttura.
- Non definire una politica di indicizzazione coerente per le pagine che generano parametri di paginazione, filtro o ordinamento; quando una parte di queste pagine rimane nell’indice e un’altra parte viene esclusa, si crea un segnale confuso a livello dell’intero sito.
- Utilizzare in modo contraddittorio il tag canonical e noindex nella stessa pagina; ad esempio, impostare una pagina come noindex mentre se ne indica un’altra come canonical genera segnali confusi.
- Dimenticare che un unico file robots.txt è sufficiente per l’intero sito e tentare di applicare restrizioni di accesso separate nelle sottodirectory; il file robots.txt è valido solo nella directory principale.
- Nel rapporto di Seoraporu.co, segnali contraddittori come "bloccato da robots.txt ma presente anche noindex" vengono contrassegnati separatamente; invece di mantenere entrambi sulla stessa pagina, sceglietene solo uno.