27 de diciembre de 2016

Personalizar el archivo robots.txt

Crear el archivo robots del blog
 

¿Qué es el archivo robots.txt?


Robots.txt es un archivo de texto creado por el usuario para controlar el acceso de los robots al alojamiento del sitio web. En él se establecen unas "recomendaciones" de indexación para que estos rastreadores de los motores de búsqueda se comporten de determinada manera, indicándoles cómo rastrear, lo que deben indexar y lo que no.
Con este archivo podemos alejar ciertas páginas de los buscadores o denegar el acceso de algunos de ellos a nuestro sitio.


¿Cómo es el archivo robots.txt de Blogger?


Para visualizarlo abrimos el navegador y escribimos en la barra de de dirección,

"URL del blog"/robots.txt

Se abrirá una página en el navegador que mostrará el contenido de nuestro archivo.
Accedo al archivo robots.txt de mi blog,

User-agent: Mediapartners-Google
Disallow: 

User-agent: *
Disallow: /search
Allow: /

Sitemap: http://prodpersonal.blogspot.com/sitemap.xml 


User-agent: Mediapartners-Google
Disallow:
Se indica que todo el sitio puede ser rastreado por los robots de AdSense para mostrar publicidad.
 
User-agent: *
User-agent o agentes de usuario son los navegadores, motores de búsqueda, robots, mapeadores...que se conectan a la Web
Al indicar :* estamos dando instrucciones para todos los agentes.

¿Y qué indicaciones son?
Disallow: /search
Que lo que se encuentre en el directorio /search y en todas sus extensiones sea bloqueado. Es decir, se da indicaciones para que no se indexen las etiquetas del blog y evitar contenido duplicado.
Google no penaliza contenido duplicado excepto cuando su fin sea manipular los resultados de búsqueda. A pesar de ello debemos evitarlo porque consume más tiempo de búsqueda a los robots y ocasionará que Google rastree las páginas del blog con menor frecuencia.
Allow: /
La siguiente línea Allow: / significa que el resto del sitio puede ser rastreado.

Sitemap: http://prodpersonal.blogspot.com/sitemap.xml
La última línea le indica a Google dónde se encuentra el sitemap del blog.



¿Qué contenido duplicado puede ocasionar el archivo robots.txt de Blogger?


En el caso de mi blog, al buscarlo en Google he visto que tengo entradas duplicadas porque se muestran de forma independiente en los resultados pero su contenido se repite en las páginas que corresponden al archivo del blog (agrupadas por mes)


Resultados en Google


Si nos fijamos en la ruta de acceso de estas páginas, todas terminan con _archive.html.
Como no quiero que se muestren las páginas del archivo del blog, tengo que sugerir a los robots y motores de búsqueda que excluyan estas páginas y lo hago modificando el archivo robots.txt que tiene definido por defecto Blogger




¿Cómo agregar un archivo robots.txt personalizado en Blooger?


Modificar el archivo robots.txt en Blogger es sencillo pero debemos tener mucho cuidado y estar muy seguros de lo que hacemos porque afectará al rastreo e indexación de nuestro blog. Si no nos vemos seguros mi consejo es no tocar nada y dejarlo como está.

Para mi blog solo necesito por el momento restringir el acceso de los robots a las páginas del archivo del blog.

Voy al menú izquierdo de Blogger,
Configuración → Preferencias para motores de búsqueda → Editar "archivo robots.txt personalizado"

Editar archivo robots.txt en Blogger


Marcamos (Si) en ¿Habilitar el contenido del archivo robots.txt personalizado?

Habilitar contenido del archivo robots.txt


Copiamos las siguientes líneas y las pegamos dentro del cuadro de archivo.


User-agent: Mediapartners-Google
Disallow: 

User-agent: *
Disallow: /search
Disallow: /p/ 
Disallow: /*_archive.html$
Allow: /

Sitemap: http://prodpersonal.blogspot.com/sitemap.xml

Guardamos cambios.

Se ha añadido dos nuevas líneas,

Disallow: /p/
que va a sugerir a los rastreadores y robots que se bloqueen las URLs de la carpeta p (menú páginas) y las ULRs de su contenido (subcarpetas).
Disallow: /*_archive.html$
que va a sugerir a los rastreadores y robots que se bloqueen las URLs que contengan y terminen ($) con _archive.html para que no se indexe su contenido (las páginas del archivo del blog).

Utilizo sugerir y no ordenar porque efectivamente es lo único que podemos hacer. Estos cambios no significan que los robots cumplan con las instrucciones de los comandos del archivo robots.txt porque es posible que el contenido bloqueado pueda aparecer en los resultados de Búsqueda. Solo queda confiar en la buena voluntad de los user-agents.


Otras instrucciones para el archivo robots.txt

*
Hace referencia a cualquier número de caracteres.

$
Indica que no debe haber más caracteres a continuación.

Disallow: *?*
Ordena no indexar las URLs con cualquier cadena de caracteres que estén antes de ? e indexar las URLs que contienen cualquier cadena de caracteres tras el signo ?.

Disallow: *?
Ordena no indexar las URLs con cualquier cadena de caracteres que estén antes y después del signo ?.
 
Disallow: *?$
Ordena no indexar las URLs con cualquier cadena de caracteres que terminen con el signo ?.

Disallow: /search$
Ordena no indexar unicamente las URLs de la carpeta search (que terminen con /search) pero sí indexar su contenido o subcarpetas (por ejemplo ..../search/archive).

Disallow: /search*
Ordena no indexar las URLs de la carpeta que empiecen por search.

Disallow: /*search
Ordena no indexar las URLs que contienen search.

Disallow: /*/search
Ordena no indexar ninguna ruta que incluya search.

Disallow: /search/$
Ordena no indexar el directorio o carpeta search pero sí indexar su contenido o subcarpetas (por ejemplo ..../search/archive) .
Disallow: /*.jpeg$
Ordena no indexar los archivos con la extensión jpeg.

Es importante tener en cuenta que el archivo robots.txt distingue entre mayúsculas y minúsculas.

10 comentarios:

  1. Hola, el archivo de robot que sugieres copiar es algo básico y útil que nos puede servir a nosotros? es decir, este:

    User-agent: Mediapartners-Google
    Disallow:

    User-agent: *
    Disallow: /search
    Disallow: /p/
    Disallow: /*_archive.html$
    Allow: /

    Sitemap: http://prodpersonal.blogspot.com/sitemap.xml

    ResponderEliminar
  2. Hola Pedro. Muchas gracias por tu comentario.

    En relación a tu consulta, efectivamente este archivo robots.txt que incluyo en el post es básico y útil si se pretende que los motores de búsqueda no rastreen las páginas resultado de una búsqueda (Disallow: /search), el menú de páginas (Disallow: /p/ ) y el Archivo del blog (Disallow: /*_archive.html$).

    No sé cuáles son vuestras necesidades para responder adecuadamente a tu pregunta.

    Te cuento mi caso particular. Este archivo robots.txt me funcionó durante un tiempo pero me vi en la necesidad de añadirle nuevas instrucciones porque se estaban indexando las páginas que muestran la relación de entradas por fecha cuando se accede al Archivo del blog.

    Es decir. Añadí las siguientes órdenes,

    Disallow: /2016/$
    Disallow: /2016/01/$
    Disallow: /2016/02/$
    Disallow: /2016/03/$
    .
    .
    Disallow: /2016/12/$............así hasta Diciembre de 2016

    Para el año 2017 repetí el mismo procedimiento.

    Ahora el número de páginas indexadas coincide con el número de entradas del post, evitando así la duplicidad de contenido, que era mi objetivo.

    Puedes consultar qué páginas se están indexando del blog o sitio web escribiendo en el navegador,
    site:"URL del sitio web o blog"

    En la última línea del archivo robots.txt tenéis que poner la dirección del sitemap de vuestro sitio o blog.

    Espero haberte ayudado en algo.

    Saludos!

    ResponderEliminar
  3. Hola Mavicfe, estaba leyendo tu página super interesante estoy alucinando, pero ahora en el 2018 Adsense envia este mensaje a a los editores de Blogger, que se modifique el rastreador de Adsense y te envia a esta pagina: https://support.google.com/adsense/answer/10532

    Mi pregunta entonces sería en el apartado que dices de la casilla de Blogger en robots.txt personalizado, sería donde ya ¿no se pondría esa línea?, porque en el Search console no te deja eliminarlo, e incluso te dice que esta bien y permitido, yo llevo años con Adsense y jamás he tocado los robots.

    Espero tu respuesta

    Un saludo me voy a seguir leyendo tu blog, muchas gracias por toda la información que brindas

    ResponderEliminar
    Respuestas
    1. Hola, muchas gracias por tu visita y tu comentario! Me alegra saber que el contenido del blog te ha servido de ayuda, esa es su finalidad.

      En relación a tu consulta, he revisado la página que has recibido de Adsense donde advierten a los editores de la necesidad de eliminar dos líneas del archivo robots.txt.

      User-agent: Mediapartners-Google
      Disallow: /

      Efectivamente la línea Disallow: / impide al robot de Adsense rastrear todo el sitio web y por lo tanto habría que eliminarla.

      En este artículo incluyo estas dos líneas pero sin la barra inclinada, permitiendo así que el bot de Adsense pueda rastrear todo el sitio.

      User-agent: Mediapartners-Google
      Disallow:

      Así no debería presentarse ningún problema. He probado este archivo en Google Search Console para Mediapartners-Google y el resultado ha sido sin situación de bloqueo.

      En tu comentario indicas que llevas años en Adsense sin problemas y no has tocado el archivo robots.txt. Yo te recomendaría lo primero consultar el contenido del archivo robots.txt de tu blog.
      Lo puedes hacer con la URL de tu blog/robots.txt ["URL del blog"/robots.txt] o en Search Console, dentro de Rastreo – Probador de robots.txt. Ahí podrás comprobar la última versión vista por Google de tu archivo robots.txt para confirmar cómo se trata al rastreador de Adsense.

      De igual modo si quieres modificar tu archivo es necesario hacerlo en el servidor del sitio web. Search Console solo permite probarlo.

      Al ser un blog de Blogger tenemos que entrar en la plataforma y hacer los cambios en ella.

      Para eso vamos a Configuración – Preferencias para motores de búsqueda – Archivo robots.txt personalizado y eliminamos estas dos líneas que notifica Adsense, si existen. Guardamos cambios y quedamos a la espera de que Google vuelva a rastrear el sitio.

      Espero que te haya servido de alguna ayuda. Yo nunca he trabajado con Adsense, de todos modos no dudes en contactar de nuevo para cualquier consulta que tengas, sobre este tema u otro.

      Un saludo y de nuevo muchas gracias por tu atención y palabras que animan a seguir trabajando y aprendiendo!

      Eliminar
  4. Hola gracias por contestar y seguirme, te cuento, no se soluciona eliminando solo la barra, de hecho yo ya la tenia eliminada hace mucho tiempo, y no funciono, se trata de eliminar las dos líneas como dice Adsense, pero no de Search Console que no te lo permite, y ademas te dice que todo está correcto cuando no es así.

    Se tienen que eliminar las dos líneas desde Blogger-Configuración, se pondrá todo igual que está en el Search Console pero sin esas dos líneas que advierte Adsense,y directamente en Blogger en Preferencias de motores de búsqueda- en Archivo robots txt personalizado.

    Si te fijas en tu propio Search Console, o aquí: https://prodpersonal.blogspot.com.es/robots.txt, sigues sin tener laS 2 líneas eliminadas, si tienes publicidad qué no lo sé porque no la veo, son esas dos líneas las que hay que eliminar para dejar paso a la publicidad de Adsense, a mi se me resolvió en cuanto hice estos pasos, después de escribirte, y hoy ya sale en Search Console como eliminadas, y resuelto.

    Curioso no? un saludo cariñoso no dejaré de visitarte compañero

    ResponderEliminar
  5. ¡Hola, muchas gracias a ti por responder!

    Mi archivo robots.txt mantiene aún las dos líneas porque como te comenté anteriormente nunca he usado Adsense y tampoco sabía de los nuevos cambios.

    Te agradezco mucho que confirmes que tampoco funciona eliminando la barra. Efectivamente no se puede modificar el archivo desde Search Console. Entiendo que tú ya las eliminaste a través de Blogger y que Google ya ha actualizado el archivo con las nuevas modificaciones. Por lo tanto has resuelto la incidencia.

    De nuevo reitero mi agradecimiento por avisar de los nuevos cambios y por explicar cómo has solucionado el problema.
    ¡Un afectuoso saludo compañero!

    ResponderEliminar
  6. Buen dia, gracias por la información, una pregunta, para poder entonces decirle a google que no me indexe una pagina o etiquetas, tendria que colocar la url completa ?

    O podrias indicarme como o un ejemplo de como seria. Entiendo que asi Disallow: /p/ no indexa las paginas, pero quiero es indicar cuales paginas no indexe o las mismas etiquetas para el caso.

    ResponderEliminar
  7. Hola, muchas gracias a ti por tu visita y comentario.

    En relación a tu consulta, te voy a explicar qué hice yo.
    Por ejemplo, me encontré que Google estaba indexando las páginas que correspondían a los índices de publicación de las entradas. Para evitar que siguiera rastreando estas páginas añadí este tipo de líneas al achivo robots.txt

    Disallow: /2016/$

    Esta línea ordena No Indexar el directorio o carpeta correspondiente al año 2016 pero Sí Indexar su contenido o subcarpetas. Es decir, indico que no se indexe la URL que corresponde a la página de índice con los artículos publicados en todo el año 2016 (la que indico a continuación),

    https://prodpersonal.blogspot.com.es/2016/ (orden de no indexar)

    pero sí que indexe las páginas que corresponden a las entradas de 2016.

    Por ejemplo,
    https://prodpersonal.blogspot.com.es/2016/12/personalizar-el-archivo-robotstxt.html (permitida la indexación)

    Para que no indexe las páginas que corresponden a los índices mensuales añadí este tipo de líneas.

    Disallow: /2016/12/$

    Ordena no indexar la página del índice de entradas correspondiente al mes de Diciembre del año 2016,

    https://prodpersonal.blogspot.com.es/2016/12/ (No Indexar)

    pero sí que indexe cada una de las páginas correspondientes a los artículos de Diciembre de 2016, por ejemplo,

    https://prodpersonal.blogspot.com.es/2016/12/personalizar-el-archivo-robotstxt.html (Sí Indexar)


    Por último, se me presentó otro problema. Por un cambio en el título de una entrada Google me estaba indexando dos direcciones distintas para esta entrada.

    https://prodpersonal.blogspot.com.es/2016/06/anadir-un-borde-bajo-el-titulo-del blog.html (título antiguo)
    https://prodpersonal.blogspot.com.es/2016/06/anadir-un-borde-bajo-el-titulo-de-un.html (título nuevo)

    Para evitar que se indexaran las dos direcciones, indiqué que se bloqueara la primera.

    Disallow: /2016/06/anadir-un-borde-bajo-el-titulo-del-blog.html


    Con la línea Disallow: /p/ indico que no se indexe la página que corresponde al archivo del blog.

    Si no quieres que se indexen las páginas que corresponden a las etiquetas tienes que añadir

    Disallow: /search

    Si por el contrario, solo quieres bloquear determinadas páginas de etiquetas tendrías que eliminar la línea anterior y añadir las páginas a bloquear Por ejemplo,

    Disallow: /search/label/Blogger (con esta línea se ordena indexar todas las páginas de etiquetas excepto la página de la etiqueta Blogger).

    Espero que estas explicaciones y ejemplos te hayan servido de alguna ayuda.

    Un saludo.

    ResponderEliminar
    Respuestas
    1. Gracias ! Si me quedo muy claro todo, muchas gracias enserio, gran aporte !

      Eliminar
    2. Estupendo! Me alegra saberlo.
      Muchas gracias!

      Eliminar