Blocco degli URL con robots.txt

Creare un file robots.txt

Se usi un servizio di hosting di siti, come Wix o Blogger, potrebbe non essere necessario creare o modificare un file robots.txt.

Come iniziare

Il file robots.txt risiede nella directory principale del sito. Pertanto, per il sito www.example.com, il file robots.txt risiede all'indirizzo www.example.com/robots.txt. robots.txt è un file di testo normale conforme al Protocollo di esclusione robot. Un file robots.txt è formato da una o più regole. Ogni regola blocca (o consente) l'accesso di un determinato crawler a un percorso di file specificato nel sito web in questione.

Di seguito è riportato un semplice file robots.txt con due regole, spiegate sotto:

# Regola 1
User-agent: Googlebot
Disallow: /nogooglebot/

# Regola 2
User-agent: *
Allow: /

Sitemap: http://www.example.com/sitemap.xml

 

Spiegazione:

  1. Lo user-agent denominato "Googlebot" (crawler) non deve eseguire la scansione della cartella http://example.com/nogooglebot/ o di eventuali sottodirectory.
  2. Tutti gli altri user-agent possono accedere all'intero sito. Se questa regola fosse stata omessa il risultato sarebbe stato uguale perché il presupposto è l'accesso completo.
  3. Il file Sitemap del sito si trova all'indirizzo http://www.example.com/sitemap.xml.

Forniremo un esempio più dettagliato in un secondo momento.

Linee guida di base per i file robots.txt

Di seguito sono riportate alcune linee guida di base relative ai file robots.txt. Ti consigliamo di leggere la sintassi completa dei file robots.txt perché ha un comportamento non immediatamente evidente che dovresti comprendere.

Formato e posizione

Puoi utilizzare praticamente qualsiasi editor di testo per creare un file robots.txt. L'editor di testo deve essere in grado di creare file di testo con caratteri ASCII o UTF-8 standard; non utilizzare un elaboratore di testo perché spesso questi elaboratori salvano i file in un formato proprietario e possono aggiungere caratteri non previsti, come le virgolette curve, che possono causare problemi per i crawler.

Usa lo strumento Tester dei file robots.txt per scrivere o modificare i file robots.txt relativi al tuo sito. Questo strumento ti consente di testarne la sintassi e il comportamento direttamente sul sito.

Regole per il formato e la posizione:

  • Il nome del file deve essere robots.txt.
  • Puoi avere un solo file robots.txt per il tuo sito.
  • Il file robots.txt deve risiedere nella directory principale dell'host del sito web a cui si applica. Ad esempio, per controllare la scansione di tutti gli URL compresi in http://www.example.com/, il file robots.txt deve trovarsi all'indirizzo http://www.example.com/robots.txt. Non può essere contenuto in una sottodirectory (ad esempio, http://example.com/pages/robots.txt). Se hai dubbi su come accedere alla directory principale del tuo sito web o se ti occorre l'autorizzazione ad accedere, contatta il fornitore del tuo servizio di hosting web. Se non riesci ad accedere alla directory principale del tuo sito web, usa un metodo di blocco alternativo come i meta tag.
  • Un file robots.txt può essere applicato a sottodomini (ad esempio, http://sitoweb.example.com/robots.txt) o a porte non standard (ad esempio, http://example.com:8181/robots.txt).
  • I commenti sono qualsiasi riga. 

Sintassi

  • Il file robots.txt deve essere un file di testo con caratteri ASCII o UTF-8. Non sono consentiti altri caratteri.
  • Un file robots.txt è formato da una o più regole.
  • Ogni regola è formata da diverse istruzioni, una per riga.
  • Una regola fornisce le seguenti informazioni:
    • A chi si applica la regola (lo user-agent)
    • Le directory o i file a cui l'agente può accedere e/o
    • Le directory o i file a cui l'agente non può accedere.
  • Le regole vengono elaborate dall'alto verso il basso e uno user-agent può corrispondere a un solo insieme di regole, ovvero alla prima più specifica regola che si applica a un determinato user-agent.
  • La supposizione predefinita è che uno user-agent possa eseguire la scansione di pagine o directory non bloccate da una regola Disallow:.
  • Per le regole viene fatta distinzione tra maiuscole e minuscole. Ad esempio, la regola Disallow: /file.asp viene applicata a http://www.example.com/file.asp, ma non a http://www.example.com/FILE.asp.

Nei file robots.txt vengono usate le seguenti istruzioni:

  • User-agent. [Valore obbligatorio; uno o più per ogni regola] Il nome del robot di un motore di ricerca (software web crawler) a cui viene applicata la regola. Si tratta della prima riga di ogni regola. La maggior parte dei nomi di user-agent è indicata nel database Web Robots Database o nell'elenco di user-agent di Google. È supportato il carattere jolly * per il prefisso, il suffisso o l'intera stringa del percorso. Se usi un asterisco (*), come nell'esempio che segue, la regola viene applicata a tutti i crawler tranne ai vari crawler AdsBot, i cui nomi devono essere indicati espressamente. Consulta l'elenco di nomi dei crawler di Google. Esempi:
    # Esempio 1: bloccare solo Googlebot
    User-agent: Googlebot
    Disallow: /
    
    # Esempio 2: bloccare Googlebot e Adsbot
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
     
    # Esempio 3: bloccare tutti i crawler, tranne AdsBot
    User-agent: * 
    Disallow: /
  • Disallow. [Almeno una o più voci Disallow o Allow per ogni regola] Una directory o una pagina, relative al dominio principale, che non devono essere sottoposte a scansione dallo user-agent. Se si tratta di una pagina, deve essere indicato il nome completo mostrato nel browser; se si tratta di una directory, il nome dovrebbe terminare con il carattere /.  È supportato il carattere jolly * per il prefisso, il suffisso o l'intera stringa del percorso.
  • Allow. [Almeno una o più voci Disallow o Allow per ogni regola] Una directory o una pagina, relative al dominio principale, che devono essere sottoposte a scansione dallo user-agent appena menzionato. Questo valore viene usato al posto di Disallow per consentire la scansione di una sottodirectory o di una pagina in una directory non consentita. Se si tratta di una pagina, deve essere indicato il nome completo mostrato nel browser; se si tratta di una directory, il nome dovrebbe terminare con il carattere /. È supportato il carattere jolly * per il prefisso, il suffisso o l'intera stringa del percorso.
  • Sitemap. [Valore facoltativo; nessun valore o più valori per ogni file] La posizione di una Sitemap relativa al sito web. Deve essere un URL completo; Google non suppone l'esistenza di versioni alternative http/https/www.non-www e non le controlla. Le Sitemap rappresentano un valido metodo per indicare i contenuti che Google dovrebbe sottoporre a scansione e i contenuti che Google può o non può sottoporre a scansione. Leggi ulteriori informazioni sulle Sitemap. Esempio:
    Sitemap: https://example.com/sitemap.xml
    Sitemap: http://www.example.com/sitemap.xml

Le parole chiave sconosciute vengono ignorate.

Un altro file di esempio

Un file robots.txt è formato da uno o più blocchi di regole, che iniziano ognuno con una riga User-agent in cui viene specificato il target delle regole. Di seguito è riportato un file con due regole spiegate tramite commenti incorporati:

# Impedisci a Googlebot di accedere a example.com/directory1/... e a example.com/directory2/...
# ma consenti l'accesso a directory2/subdirectory1/...
# Tutte le altre directory sul sito sono consentite per impostazione predefinita.
User-agent: googlebot
Disallow: /directory1/
Disallow: /directory2/
Allow: /directory2/subdirectory1/

# Blocca l'accesso di tutti gli altri crawler all'intero sito (anothercrawler).
User-agent: anothercrawler
Disallow: /

Sintassi completa dei file robots.txt

Puoi trovare qui la sintassi completa dei file robots.txt. Leggi la documentazione completa perché la sintassi del file robots.txt ha alcune parti complesse che è importante imparare a usare.

Regole utili per i file robots.txt

Di seguito alcune regole utili per i file robots.txt:

Regola Esempio
Non consentire la scansione dell'intero sito web. Ricorda che, in alcune situazioni, gli URL del sito web potrebbero essere comunque indicizzati, anche se non sono stati sottoposti a scansione. Nota: questa regola non viene applicata ai vari crawler AdsBot, i cui nomi devono essere indicati espressamente.
User-agent: *
Disallow: /
Non consentire la scansione di una directory e dei relativi contenuti facendo seguire il nome della directory da una barra. Ricorda che non devi utilizzare il file robots.txt per bloccare l'accesso ai contenuti privati, bensì l'autenticazione corretta. Gli URL non consentiti dal file robots.txt possono essere comunque indicizzati senza essere sottoposti a scansione e il file robots.txt può essere visualizzato da chiunque, comunicando eventualmente il percorso dei contenuti privati.
User-agent: *
Disallow: /calendar/
Disallow: /junk/
Consentire l'accesso a un singolo crawler
User-agent: Googlebot-news
Allow: /

User-agent: *
Disallow: /
Consentire l'accesso a tutti i crawler tranne uno
User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

Non consentire la scansione di una singola pagina web indicando la pagina dopo la barra:

Disallow: /private_file.html

Bloccare un'immagine specifica su Google Immagini:

User-agent: Googlebot-Image
Disallow: /images/dogs.jpg

Bloccare tutte le immagini del tuo sito su Google Immagini:

User-agent: Googlebot-Image
Disallow: /

Non consentire la scansione di un tipo di file specifico (ad esempio, .gif):

User-agent: Googlebot
Disallow: /*.gif$

Non consentire la scansione dell'intero sito, ma mostrare gli annunci AdSense nelle pagine; non consentire l'accesso a tutti i web crawler diversi da Mediapartners-Google. Questa implementazione consente di non visualizzare le tue pagine nei risultati di ricerca, ma il web crawler Mediapartners-Google può comunque analizzarle per stabilire quali annunci mostrare ai visitatori del tuo sito.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Usa il carattere $ per applicare la regola agli URL che terminano con una stringa specifica. Ad esempio, questo codice di esempio blocca tutti gli URL che terminano con .xls:
User-agent: Googlebot
Disallow: /*.xls$
Hai trovato utile questo articolo?
Come possiamo migliorare l'articolo?