10+1 cosas que deberías saber sobre los ficheros robots.txt y también indexación SEO

10+1 cosas que deberías saber sobre los ficheros robots.txt y también indexación SEO

15 Jul 2020 in

Hace tiempo que no comentamos muchas cosas de posicionamiento web por aquí. Así que a fin de que no se afirme el día de hoy he sacado de bocetos una serie de apuntes sobre uno de los básicos del SEO del que la mayoría de gente desconoce detalles muy importantes: El archivo robots.txt, uno de los básicos de la indexación posicionamiento en buscadores. Robots.txt es un fichero destinado a indicar a los motores de búsqueda que URLs está en su derecho a visitar y de cuales debería abstenerse. El funcionamiento es simple: antes de visitar una URL del site un robot debería mirar en este archivo para determinar si debe ir ahí a recoger información o bien si por contra el dueño del site prefiere que no entre. En definitiva son solo indicaciones que cualquier robot puede saltarse si quiere, mas a las que el robot de google hace bastante caso (que tampoco al cien por cien ).

El archivo robots.txt es uno de esos temas técnicos del que todo posicionamiento web debe saber lo suficiente como para manipularlo con éxito. Por este motivo exactamente el mismo Google en su soporte nos señala como podemos crear el nuestro:.

Se nos da información muy directa y fácil de asimilar. La redacción de estos archivos es muy sencilla si bien cualquier fallo, por mínimo que sea, podría provocar que las arañas no entraran en las páginas que queremos. En el mejor de los casos eso provocará que sigan visitando URLs en las que no querríamos que perdiesen el tiempo en el peor será todo lo contrario: no indexarán contenidos que en realidad si que deseamos que aparezcan en el buscador. Es el tipíco aspecto importante que de fácil que es la gente no se toma lo suficientemente en serio, y ahí esta el problema: la documentación de Google está bien si bien no cubre todas las pecularidades sobre como se marcha a interpretar dicho fichero y si nos quedamos solo ahí podemos cometer fallos que lamentaremos en el futuro.

Así pues, os dejo diez conceptos sobre estos archivos que hay que tomar en consideración y asimilar. Desde lo más básico hasta consejos que solo en webs complejas o con mucho detalle de optimización del crawl budget podremos aplicar.

Back to top

1) Previo: El formato general del robots.txt

Un Robots.txt es fácil...

1. Empezamos declarando en una línea el usuario-agent (nombre del sistema que está navegando o bien rastreando el site) al que deseamos afectar y tras esta indicaremos los accesos permitidos y prohibidos.
- En muchas ocasiones declararemos un accceso a todos (usuario-agent:*) y en ocsaiones nos referiremos a algun robot o crawler particularmente (user-agent:googlebot).

2. Después empleamos directivas "Allow: expresion" y "Disallow: expresion" para apuntar si damos acceso o bien lo eliminamos. Por defecto podríamos decir que un robot tiene acceso a todas las URLs del site ("Allow:*") pero si bien esto es ya así desde el principio mucha gente decide dejarlo declarado de forma explicita y continuar prohibiendo desde ahí. De ahí que aun siendo superfluo no debe parecernos extraño ver un robots que comienza por "Allow: *".

3. Por ultimo, podemos apuntar nuestro sitemap.xml si lo deseamos (sitemap: sitemap.xml). Esto para Google carece de importancia si gestionamos adecuadamente Google Search Console, si bien puede ayudar a otros robots a leerlo así que mal no va a hacernos declararlo.

Una cosa curisosa de este archivo sitemap es que puede estar alojado aun en otros dominios diferentes al nuestro (esto puede ser útil si por servirnos de un ejemplo necesitamos hacer subidas con cambios del fichero cada cierto tiempo y en la página web que trabajamos no nos lo dejan ir actualizando de forma tan ágil).

Así un ejemplo que cubra todo lo que terminamos de mencionar sería el siguiente:

Visto esta base, que es lo más conocido del robots, vayamos a por los conceptos que no todo el mundo tiene tan dominados...

Back to top

2) 1. Donde colocas tu archivo es más esencial de lo que creees.

Existe mucha confusión con este punto, en parte por el hecho de que la documentación anteriormente (de hecho cuando escribi este blog post yo mismo lo detallé mal) El fichero robots.txt siempre se busca en la senda "/robots.txt" de tu dominio. El robots.txt afecta al host donde está alojado pero solo a este host exacto. Esto supone que un subdominio no hará caso al robots.txt de su host superior y que http y https emplean ficheros diferentes. ¿Por qué etonces vemos sitios donde una configuración bloquea a otra? Lo vamos a ver más adelante mas es sobretodo por temas de hosts redirigidos completamente con un 301. O sea, cuando vemos que el robots.txt de afecta también a midominio.com normalmente es porque existe una redirección de "midominio.com/robots.txt" a "/robots.txt" y por ende se lee el mimso archivo para ambos hosts. Lo mismo pasa con http y https, si uno esta redirigido al otro se aplica el mismo fichero a los dos.

Pero en definiva vendría a ser esto:

Así pues:

  • midominio.com/robots.txt>>NO afecta a y a weblog.midominio.com
  • dev.midominio/robots.txt>>Afecta a dev.midominio.com pero no a weblog.dev.midominio.com
  • /robots.txt>>Afecta a pero no a weblog. y solo afectará a midominio.com si hay un redirect de midominio.com/robots.txt a /robots.txt

Además también hay que suprimir la creencia de que el robots.txt actúa como muchos piensan sobre carpetitas concretas del site. Esto no es cierto: Google solo lo lee si está en la raiz del documento:

"midominio.com/blog/robots.txt" no sirve para nada. Google no va a procurar leerlo ni tiene por el hecho de que hacerle caso. Algunos CMS se empeñan en añadirlo mas esto no es parte integrante de la definición oficial del archivo robots.txt.

Back to top

3) 2. El tipo y tamaño de archivo puede afectar a que no se lea tu archivo robots.txt

Lo ideal es que un robots.txt esté codificado en UTF-8 para no tener inconvenientes de lectura. Mas la verdad es que los ficheros de texto pueden tener múltiples codificaciones y si por poner un ejemplo creas el archivo desde tu bloc de notas de windows probablemente su formato sea otro. Es conveniente usar editores de texto plano más profesionales (como por servirnos de un ejemplo, por daros una opción sencilla y pontente notepad++ ) donde entre otras cosas se os deje elegir la codificación del archivo.

Aun así Google nos dice que puede leer otras codificaciones, lo que ocurre en estos casos no es tanto que el pueda o bien no, sino que al generarlo se escriba en una codificación y el servidor lo devuelva en otra. Eso puede provocar los típicos caracteres extraños que terminan en que el archivo no funcione o bien no se lea de forma adecuada.

Aun dentro de los archivos UTF-8 hay una cosa en estos archivos que se llama. Lo idóneo es que los ficheros simples no tengan BOM mas Google es capaz de leer el robots.txt con un BOM inicial (y solo uno y solo al principio) así que si vuestro fichero tiene BOM no pasa nada.

Otra limitación la tenemos en el tamaño. Google nos limita a 500MB, (1/2 GB) si lo pasamos no leerá el archivo. Así que debemos ahorrar estos ficheros y ya no solo por no acercanos a los 500MB sino por el hecho de que son archivos muy consultados por los robots y a mayor tamaño más desgaste de proceso y red en el servidor.

Back to top

4) 3. Un disallow solo prohíbe leer el contenido no indexar (y de primeras no está centrado a desindexar)

Un aviso: No es exactamente lo mismo un <meta name="robots" content="noindex" /> que un disallow en el robots. Significan cosas absolutamente distintas.

  • Disallow prohibe a las arañas leer el HTML de la página. Mas puede leer la URL y aparecer esta en búsquedas con información desde otras páginas y enlaces de internet. Además con un disallow no suprimimos lo que ya sabía Google de esas páginas y no es extraño que tras añadir una URL como disallow veamos como el resultado se sostiene un tiempo en el buscador. Claramente no es una forma rápida de desindexar, va más encaminado a temas de rastreo y a acciones a medio o largo plazo.
  • Por el contrario con un NoIndex en el meta-robots si deja a la araña rastrear el HTML mas prohíbe que su resultado salga en Google. Es el efecto contrario: las arañas prosiguen perdiendo el tiempo con esa página mas los resultados desaparecen antes del buscador

Todo esto por supuesto con matices... A la larga un Disallow provocará la desindexación si no hay links externos hacia esa página y por el contrario un meta-robots a noindex terminará provocando menor rastreo de esa url que total Google no puede trabajar.

Un aviso: No es lo mismo un <meta name="robots" content="noindex" /> que un disallow en el robots. Significan cosas plenamente distintas.

  • Disallow prohibe a las arañas leer el HTML de la página. Mas puede leer la URL y aparecer esta en búsquedas con información a partir de otras páginas y enlaces de internet. Además con un disallow no suprimimos lo que ya sabía Google de esas páginas y no es extraño que tras añadir una URL como disallow veamos como el resultado se sostiene un tiempo en el buscador. Definitivamente no es una forma rápida de desindexar, va más encaminado a temas de rastreo y a acciones a medio o bien largo plazo.
  • Por el contrario con un NoIndex en el meta-robots si deja a la araña rastrear el HTML pero prohíbe que su resultado salga en Google. Es el efecto contrario: las arañas siguen perdiendo el tiempo con esa página mas los resultados desaparecen ya antes del buscador

Todo esto por supuesto con matices... Con el tiempo un Disallow provocará la desindexación si no hay links externos hacia esa página y por contra un meta-robots a noindex terminará provocando menor rastreo de esa url que total Google no puede trabajar.

Back to top

5) 4. Si el contenido no se lee, como es lógico, las directivas del HTML se ignoran

No tiene sentido un disallow+noindex o un disallow+canonical o disallow+rel-next/prev o un disallow+loquesea-en-el-html. Google no va a contemplar este HTML por el hecho de que le hemos prohibido acceder a el así que ahórrate su etiquetado.

Lo mismo pasa aunque en menor medida con las redirecciones. Si yo creo una redirección trescientos uno de una URL vieja a una nueva y al mismo tiempo bloqueo la vieja por robots.txt Google no debería enterarse de que he creado un trescientos uno (porque no debería acceder a la URL con trescientos uno) así que el traspaso de autoridad no se realizará de forma eficiente. En la práctica en ocasiones si se da cuenta de la redirección pero en general se pierde mucha autoridad al hacer estas cosas.

Otro caso es el de meta-robots=noindex unido a otras directivas. En teoría nada impide que no puedas poner por ejemplo un noindex y un canonical al unísono, se puede pero es un tanto singular y realmente su interpretación es muy ambigua. Y ante estos casos equívocos sabemos que Google decide ignorar todas las señales del HTML (por no fiarse de ellas) por lo que aunque en teoría si se puedan hacer estas cosas yo no os recomendaría ninguna salvo la de "noindex,follow" e incluso esa, de forma cuidadosa (puesto que un noindex se rastrea poco, así que ponerle un follow termina siendo un tanto contradictorio).

Back to top

6) 5. La redacción de las URLs es bien simple, pero muy específica y sus reglas de lectura no son tan intuitivas como podría parecer.

La vamos a repasar pues llegados al detalle tiene miga y la gente comete muchos fallos.

Cada línea debe comenzar con una orden (allow/disallow) y cada orden hay que escribirla con mucho cuidado.

  • Si las urls no empiezan con un slash ("/") google lo añadirá. Es decir: "disallow: blog" google lo entenderá como "disallow: /blog" y "disallow: -producto" como "disallow: /-producto".
  • La regla que aplica Google no es un "contiene", nuestra declaración debe empear por el principio de la URL. Normas tipo "disallow: .doc" no funcionan porque falta el principio de la URL. De echo entenderá que la url a prohibir es urls que comiencen por "/.doc".

    Esto tiene varias implicaciones:

    • La solución cuando lo que deseamos es definir partes del final o fragmentos de las URLs es redactarlas como sigue: "/*-producto" o bien "/*.doc" indicando que empieza por cualquier cosa y luego si contiene ese indicio que deseamos advertir.
    • Si pensamos en declarar carpetas de la página web todo se vuelve más fáficl puesto que Google entenderá que se hace referencia a esa dirección y a todos y cada uno de los achivos internos que contengan esas carpetitas. Esto es, al apuntar "/mi-carpeta" como disallow, también prohíbo el acceso a "/mi-carpeta/mi-archivo".
  • Las indicaciones allow/disallow no son sensibles a mayúsculas y minúsculas, mas las URLs que se definen en ellas si lo son. Esto es puedo redactar "disallow:" o bien "Disallow:" o "DISALLOW:" y es lo mismo pero "/mi-pagina" y "/MI-PAGINA" no son exactamente la misma URL.
  • Se nos deja utilizar los comodines * y $ para completar las URLs:
    • "*" equivale a cualquier conjunto de caracteres. (el equivalente en expresiones regulares a ".*")
      • "disallow: /blog*" bloqueará la carpetita /blog/ pero tambien cualquier fichero o carpeta cuya url comience por "/blog", por servirnos de un ejemplo "/blogueria.html"
      • "disallow: /*.doc" si que marcha puesto que contemplamos cualquier cáracter al comienzo y aguardamos que acabe por .doc
    • "$ " Nos permite forzar que ese sea el final de la URL, sin permitir nada tras ella:
      • "disallow: /categoria/ dólares americanos " solo bloqueará el acceso a la página de categoría "/categoria/" pero no a archivos internos como "/categorias/post"
      • "disallow: /blog dólares americanos " solo bloqueará el archivo "/blog" pero no la carpetita "/blog/"
    • Se nos permite sobreescribir reglas por poner un ejemplo permitir el rastreo de una parte de una regla ya prohibida o bien prohibirlo luego nuevamente para una regla que lo permitía.
      disallow: /blog/ allow: /blog/$  allow: /blog/categoria-1
    • Si rastreará tanto la home como la categoría-1 del blog, mas no el resto porque todo el resto de URLs prosiguen prohibidas

  • Por último, las reglas no se aplican por orden de lecturasino por lo detallas que son.
    La regla es que Las Reglas más largas pesan más que las más cortas.
    Así:
    disallow: /blog-corporativo/ allow: /*.html

    No conseguirá que se rastreen los archivos ".html" en /blog-corporativo dado que es más larga la expresión de weblog-corporativo y en consecuencia pesa más.

    Pero esta otra composición si lo hará:

    disallow: /blog-corporativo/ allow: /blog-corporativo/*.html

    Porque ahora "/blog-corporativo/*.html" es más largo que "/blog-corporativo/" ... así de simple, pero también así de ilógico.

Esto tiene varias implicaciones:

  • La solución cuando lo que queremos es acotar partes del final o bien fragmentos de las URLs es redactarlas como sigue: "/*-producto" o "/*.doc" indicando que comienza por cualquier cosa y después si contiene ese indicio que queremos advertir.
  • Si pensamos en declarar carpetitas de la página web todo se vuelve más fáficl pues Google entenderá que se hace referencia a esa dirección y a todos los achivos internos que contengan esas carpetitas. Es decir, al indicar "/mi-carpeta" como disallow, también prohíbo el acceso a "/mi-carpeta/mi-archivo".
  • "*" equivale a cualquier conjunto de caracteres. (el equivalente en expresiones regulares a ".*")
    • "disallow: /blog*" bloqueará la carpeta /blog/ mas también cualquier fichero o carpeta cuya url empiece por "/blog", por poner un ejemplo "/blogueria.html"
    • "disallow: /*.doc" si que funciona pues contemplamos cualquier cáracter al comienzo y esperamos que acabe por .doc
  • "$ " Nos permite forzar que ese sea el final de la URL, sin permitir nada tras ella:
    • "disallow: /categoria/ dólares americanos " solo bloqueará el acceso a la página de categoría "/categoria/" pero no a ficheros internos como "/categorias/post"
    • "disallow: /blog$ " solo bloqueará el archivo "/blog" pero no la carpeta "/blog/"
  • Se nos deja sobrescribir reglas por servirnos de un ejemplo permitir el rastreo de parte de una regla ya prohibida o prohibirlo entonces de nuevo para una regla que lo permitía.
    disallow: /blog/ allow: /blog/ dólares americanos  allow: /blog/categoria-1
  • Si rastreará tanto la home como la categoría-1 del weblog, mas no el resto por el hecho de que todo el resto de URLs siguen prohibidas

  • "disallow: /blog*" bloqueará la carpetita /blog/ pero también cualquier fichero o bien carpetita cuya url empiece por "/blog", por poner un ejemplo "/blogueria.html"
  • "disallow: /*.doc" si que funciona puesto que contemplamos cualquier cáracter al principio y aguardamos que acabe por .doc
  • "disallow: /categoria/ dólares americanos " solo bloqueará el acceso a la página de categoría "/categoria/" mas no a archivos internos como "/categorias/post"
  • "disallow: /blog$ " solo bloqueará el fichero "/blog" pero no la carpeta "/blog/"

Si rastreará tanto la home como la categoria-1 del weblog, pero no el resto pues todo el resto de URLs siguen prohibidas

No conseguirá que se rastreen los ficheros ".html" dentro de /blog-corporativo dado que es más larga la expresión de blog-corporativo y por tanto pesa más.

Pero esta otra composición si lo hará:

Porque ahora "/blog-corporativo/*.html" es más largo que "/blog-corporativo/" ... así de simple, mas también así de ilógico.

Back to top

7) 6. Las opciones alternativas para evitar rastreo/indexación a robots.txt o bien meta-robots no son igualmente pontentes.

Y esto es así... No hay nada más potente y perdurable que una sentencia de robots.txt...

  • En Google Search Console puedes usar la herramienta de borrar contenido y estas URLs se borrarán. Mas Google aproximadamente a los 90 días olvidará que le habías pedido borrar la URL y si con lo que sea vuelve a encontrarla la volverá a indexar. Por lo que sirve para eliminar fallos puntuales mas no para quitar URLs que van a proseguir ahí.
  • En Google Search Console puedes utilizar la herramienta de parámetros de URL para indicar si un contenido aporta cambios en la url o bien no mas esto no es mandatario, Es solo una ayuda como puede ser el sitemaps y si Google piensa que los parámetros indicados son interesantes (cambian el contenido del HTML) la usará igual. Básicamente solo es útil para apuntar que no indexe URLs de campañas y asistir un tanto con los listados. Lo que seguro que no evitará esta función es que los robots entren en dicha URL
Back to top

8) 7. Todas las directivas no contempladas en la deficnición del robots se ignoran.

Por ejemplo el renombrado "Crawl-delay" se ignora. En teoría debería apuntar tiempo entre peticiones de robots pero no le hace caso así que podemos olvidarnos de esta sentencia al menos para Google (otros rastreadores si que le hacen caso).

Todas las directivas inventadas por terceros tambien se pasan por alto.

Y por último las líneas que comienzan por "#" también se ignoran al entenderse como comentarios. Sin embargo si que cuentan en el tamaño de archivo máximo así que es mejor no pasarse con su empleo. Una recomendacion para comentarios: Cuando trabajamos con varios proyectos o bien muchos sites es mejor incluir notas de la version subida como comentario.:

Back to top

9) 8. ¿Que pasa cuando Google no puede acceder o bien halla cosas raras al acceder a tu fichero robots?

Ya hemos dicho que el fichero robots.txt siempre y en todo momento se busca en la senda "/robots.txt" de tu dominio. Y que si no lo halla, podrá ir a buscarlo a un nivel superior de dominio (si existe). Por ejemplo si no lo encuentra en /robots.txt irá a buscarlo a dominio.com/robots.txt

Pero veamos ahora que pasa cuando lo pide. Un servidor lo que hará cuando reciba la petición del fichero robots.txt es devolver un código de contestación diciéndole a las arañas si lo está encontrando o bien no.

  • Código "200". Quiere decir que el archivo SI existe. Entonces lo leerá y aplicará sus normas. Si está vacío o bien googlebot no tiene directrices "disallow" entenderá que tiene acceso a todo y entrará hasta la cocina de la web
  • Códigos "4xx" (cuatrocientos cuatro, cuatrocientos uno, 403, etc. Significa que el fichero no existe o bien no está abierto al público. En un caso así google lo entenderá como un archivo vacío y dará acceso a todo tal y como si no contuviese disallows.
  • Código "301". Significa "contenido movido permanentemente" y viene acompañado de una URL donde está el nuevo contenido. Google interpreta en todos los sentidos que el contenido de esta URL a la que redirige robots.txt es el propio robots.txt, incluso si hay un cambio de carpetita, la URL está en otro dominio o bien si la URL no tiene el nombre "robots.txt".

    Conocer este detalle puede ser útil para administrar robots.txt programados en ciertos sistemas. Podemos tratar la URL de /robots.txt solo como una redirección a donde realmente administramos nuestro archivo robots.txt.

    Sin embargo también puede suponer un inconveniente en migraciones mal efectuadas de un dominio a otro o bien de http a https. En estos casos podemos encontrarnos con que al migrar un site devolvemos un 301 hacia el nuevo site con el robots.txt con lo que estaríamos aplicando el robots.txt nuevo al viejo dominio dejando de bloquear las urls viejas y pudiendo provocar una catarata de detección de fallos y pérdida de tiempos de rastreo. Por general la recomendación debería ser que todos y cada uno de los sites tengan su propio /robots.txt y que nunca se redirija pero esto en la mayor parte de los casos no se hace así.

  • Otros códigos (sobretodo quinientos tres). Si hay un fallo en servir el fichero, Google comprende que el dominio está caído y para no molestar para el rastreo del site y solo consultará el fichero quinientos tres hasta el momento en que su error cambie. Parar el rastreo no supone desindexar, a menos que sostengamos así el servidor tanto que comiencen a perder fuerza los links y contenidos de la página, por lo general mejor no hacerlo más de unas horas.

    El cómo actúa Google si este error persiste en el tiempo no lo sabemos exactamente mas por el motivo que sea suele llevar a perdidas de autoridad y a que se intente reindexar la web. Por este motivo, cuando hay fallos técnicos en una web, y se están solucionando en ese mismo día, es preferible obligar al archivo robots.txt a que devuelva fallo quinientos tres y así parar la indexación completa del site hasta que se arregle el problema. Esto es mucho mejor que bloquear el rastreo ya que lo segundo tiene implicaciones más severas y un simple 503 es totalmetne temporal.

  • Sin respuesta. Otra posibilidad es que el servidor no devuelva nada o tarde demasiado tiempo en hacerlo (por problemas de configuración o bien por el hecho de que la trama está demasiado sobresaturada). En esos casos Google tira de la caché que tiene de este archivo durante un tiempo. Esto es, interpreta el último fichero robots.txt al que pudo acceder y trabaja tal y como si fuese este el que está subido.

Conocer este detalle puede ser útil para administrar robots.txt programados en algunos sistemas. Podemos tratar la URL de /robots.txt solo como una redirección a donde realmente gestionamos nuestro fichero robots.txt.

Sin embargo también puede suponer un problema en migraciones mal efectuadas de un dominio a otro o de http a https. En estos casos podemos encontrarnos con que al migrar un site devolvemos un 301 hacia el nuevo site con el robots.txt con lo que estaríamos aplicando el robots.txt nuevo al viejo dominio dejando de bloquear las urls viejas y pudiendo provocar una cascada de detección de errores y pérdida de tiempos de rastreo. Por general la recomendación debería ser que todos y cada uno de los sites tengan su propio /robots.txt y que jamás se redirija pero esto en la mayor parte de los casos no se hace así.

El cómo actúa Google si este fallo persiste en el tiempo no lo sabemos exactamente mas por el motivo que sea suele llevar a perdidas de autoridad y a que se intente reindexar la web. Por este motivo, cuando hay fallos técnicos en una web, y se están solucionando en ese mismo día, es preferible obligar al fichero robots.txt a que devuelva fallo 503 y así parar la indexación completa del site hasta el momento en que se arregle el inconveniente. Esto es mucho mejor que bloquear el rastreo ya que lo segundo tiene implicaciones más severas y un simple 503 es totalmetne temporal.

Back to top

10) 9. El bloqueo de archivos JS y CSS puede ocasionar problemas e incluso está mal visto por el buscador

Google recomeinda no Bloquear archivos CSS y JS. Antigüamente eran archivos que se solían bloquear pues no le servian a las arañas para nada. Mas ahora los robots de google son capaces de interprertar el HTML y así situar los contenidos en su contexto (saben si un texto es grande o bien pequeño, el tono de fondo o que sitio ocupan en el diseño y lo perceptibles que son los contenidos para los usuarios. Así que Google nos solicita que le dejemos acceder a esto y así valorar la página web al completo.

Si no les damos acceso a estos ficheros es cuando comienza a enviarnos notificaciones y en la práctica la autoridad/calidad que percibe de nuestra web reduce.

Esto no quiere decir que no podamos nunca bloquearle un archivo JS (todos sabemos para qué &#x1F608;) pero si que hay que eludir este bloqueo a nivel general.

Back to top

11) 10. Google entra en contenidos 400 pero no si se le bloquea

Los contenidos 400 (páginas no encontradas, o bien 401 que suelen estar bajo login, etc.) si que son accedidos por las arañas. Google lo procura y se halla al visitar las páginas con que estas no responden y en consecuencia no indexan.

Al final con esta situación lo que provocamos es perder tiempo de rastreo en URLs que jamás se van a indexar así que acostumbra a ser preferible bloquearles el acceso de forma directa. Pensemos en cualquier URL, aun las de destino de los formularios de Google y una vez las tengamos presentes:

  • 1. Evitemos que el HTML muestre links hacia ellas
  • 2. Con independencia de si este acceso existe o bien no, marquemolas con con disallow en el robots
Back to top

12) Bonus. Es posible enviar un noindex desde tu servidor creando una especie de robots.txt pero para noindex y nofollow

No cuento este punto entre los diez conceptos pues realmente habla más de directivas de indexación que de robots.txt y es más una posibildiad que no es fácil de incorporar para todos ( y en su versión más fácil no está recomendado y no sabemos realmente si funciona).

Hablamos de hallar alguna forma no para prohibir el rastreo sino para prohibir la indexación: el equivalente a la metaetiqueta de robots marcada a "noindex" que comentabamos ya antes. Sobre este tema podréis leer de todo, lo más común es que os encontréis artículos que os hablen de la directiva "noindex:" en el fichero robots.txt

Esta indicación viene a decirnos que nosotros podemos crear sentencias noindex en el archivo robots con la misma nomenclatura.

Por ejemplo:

Vendria a decirle al robot que puede navegar por la categoría-1 y rastrearla pero que los contenidos de las páginaciones de esta categoría no deben aparecer en el índice de búsqueda.

Seria genial que nos dejasen hacer esto en tanto que como comentaba antes bloquear una URL no implica desindexarla y así tendríamos un control total sobre todo esto. No obstante, y pese a que podréis ver como muchos SEOs lo mencionan e inclusive, Google ya nos ha dicho quey mientras que lo prosigan diciendo creo que carece de sentido hacerlo. Así que no gozamos de esta posibilidad...

En su sitio tenemos otra forma más difícil pero efectiva a nivel de servidor que podemos emplear. Google tiene documentado el empleo de directivas robots (index/noindex,follow/nofollow) con el uso de "x-robots-tag" en las cabeceras.tan solo debemos mandar una cabecera del tipo "x-robots-tag" con exactamente el mismo valor que pondríamos a la meta-etiqueta robots para para pasarlo desde servidor y no desde HTML.

A parte del propio sistema, esto nos abre la puerta a crear un fichero que gestione estas cabeceras en nuestro servidor. Podemos hacer esto con el lenguaje de programación de nuestro Content Management System (PHP, Java, .Net, etc.) o directametne en la configuración del servidor. En ella gracias a los ficheros .htaccess y .htconfig podemos declarar el envio de cabeceras en un único archivo que definia qué puede y qué no puede indexar el robot.

Ejemplo para marcar un noindex,follow en paginaciones de tu web a través del archivo .htconfig:

Marcar no indexar incluir caché o descripción de los archivos PDF en el .htaccess...

O no indexar paginaciones a través del módulo de modRewrite con el que gestionamos nuestras URLs amigables y redirecciones:

Pero no deseo estenderme demasaido con este sistema, si deseas leer más sobre como ponerlo en práctica te recomiendo que visites otro post de este blog donde detallo otras. En la última de ellas se explica al detalle este sistema.

Back to top

13) Conclusión

No se si os habrá pasado como a mi conforme he ido descubriendo con los años todo lo que os he expuesto en este post, mas lo cierto es que como todo en el posicionamiento SEO, te percatas de que jamás sabes lo suficiente de todo. Me pareció interesante compendiar todo esto por el hecho de que prosigo viendo con el tiempo que los inconvenientes que existen en muchos sites debido a no comprender bien los archivos robots.txt siguen ahí año tras año y absolutamente nadie habla de ellos demasiado.

Asi que espero haber ayudado a ciertos y a otros haberles descubierto algún detalle que desconociesen.

Como siempre y en todo momento os espero en los comentarios o por twitter.

¿Te gustó este artículo? Puedes proseguir sus comentarios a través de, o bien realizardesde tu blog.

Back to top
Share icon

ESTOS EXCLUSIVOS INFORMES GRATUITO REVELAN

7 SECRETOS DE EXPERTOS SEO QUE TE LLEVÁN AL 1#
7 SECRETOS DE EXPERTOS SEO QUE TE LLEVÁN AL 1# EN GOOGLE PARA GANAR 10.000s DE TRÁFICO DE CALIDAD GRATUITO - EN SÓLO 2 MESES
 

Los 7 pasos más poderosos para disparar tu ranking orgánico para ALCANZAR Y MANTENER un impresionante tráfico orgánico es TUYO.

Consigue gratis lo que el 1% de los expertos en SEO venden por miles de euros... y el otro 99% ni siquiera sabe que existe.


OBTEN MI INFORME GRATUITO
5 errores que debes evitar en tu sitio web de Drupal
Ebook - 5 errores que debes evitar en tu sitio web de Drupal (¡podrían costarte miles de euros!)
 

Este Ebook cubre 5 terribles errores que probablemente estés cometiendo ahora mismo con tu sitio web de Drupal.

¡Nº3 TE SORPRENDERÁ! Esta lectura de 10 minutos te ahorrará miles de euros.



OBTEN MI INFORME GRATUITO