Intentando comprender Googlebot y los 301

Publicado por Lino Uruñuela el 22 de marzo del 2017


El otro día hubo un debate sobre qué método usará Google a la hora de interpretar, seguir y valorar las redirecciones 301. Las dudas que me surgieron fueron

¿Cómo se comportan los crawlers?

Normalmente cuando lanzamos un crawler como Secreaming Frog lo que hace es
  1. Acceder a una url inicial y extraer todos los links que hay
  2. Anotar los links en su base de datos a modo de cola de proceso, la primera que entra es la primera que crawlea.
  3. Acceder una a una y por orden a las urls que tiene pendientes de rastrear

¿Cómo se comportará Google?

Pero Google no actúa así, o no en los mismos tiempos. Google cuando descubre una url la añade a su cola de proceso, y será rastreada no en ese mismo momento sino "cuando le toque".

Esto depende de muchas cosas, sobretodo, de la autoridad de la url que la enlaza, en cambio crawlers como Screaming acceden a todas las urls por igual, las necesidades de uno y otro son distintas y por eso se comportan de manera diferente.

Una excepción de este comportamiento podría ser en las redirecciones 301, o al menos yo no lo descartaría. Quizás si lo pensamos bien, como si fuésemos quiénes han de diseñar ese proceso, ¿para qué querríamos guardar las urls intermedias que hacen redirección 301?. Almacenarlas por qué sí, pensando que no consume casi recursos, y además, que sale muy barato guardarlas, es ser muy poco exigente con tu proyecto, eso me lo enseñó David.

Lo lógico sería que lo único que guardase y valorase fuesen la url inicial y la url final, las intermedias lo único que hacen es traspasar los datos cuando son redirecciones 301. ¿Para que querrías guardarla en el sistema? implicaría procesarlas como el resto, sabiendo de antemano que tendrá que transferir esos datos a otra url. Y si lo único que hace es transfirir el valor de una a otra, volvemos al punto 1, ¿para qué las va a guardar?.


Las dudas

  1. ¿Se comportará igual con urls que tienen redirecciones 301?

    Es una duda razonable, ya que su comportamiento ante un 301 podría ser distinto, por ejemplo

    1. Accede a una url inicial y extrae los links

    2. Añade los enlaces a su cola de procesos

    3. Cuando toque accederá a la url que hace redirección 301 y ve la url de destino..
    4. Añade la url de destino a la cola de procesos y accederá a ella cuando toque.

  2. ¿Se comportará de distinta manera?

    1. Accede a una url inicial y extrae los links

    2. Añade los enlaces a su cola de procesos

    3. Cuando toque accederá a la url que hace redirección 301 y ve la url de destino.
    4. Rastrea la url de destino de la redirección inmediatamente, sin añadirla a su cola de procesos.

Y es esto es una pregunta clave, si accediese de manera seguida podría indicar que Google unificará tanto la url que hace redirección como la url de destino, y para él, en su índice interno, estará guardada como un mismo elemento/registro (aunque tenga dos urls posibles) en el cuál los los datos sobre ambas urls recaerá sobre el mismo registro en su índice. Y puede que no guarde esas urls intermedias en su sistema, o puede que sí...

Quizás no actue así, y guarda en su índice cada una de las urls intermedias como una entidad o tupla propia,  y que posteriormente, calcula y transfiere esos valores a las urls de destino.

En este caso cabría preguntarnos, ¿las urls con redirección 301 ocupan "sitio" en los índices de Google? ¿es bueno tener miles o cientos de miles de redirecciones que ocupan el sitio que quizás otras urls más eficaces podría ocupar? ¿debemos redireccionar masivamente las urls porque sí, o sería mejor hacerlo solo con aquellas urls que recibían visitas?

 

EL experimento

Vamos a enlazar a una url que Google no conoce y que no recibe ningún enlace ni de este, ni de otro site, que publicaré como muy tarde la semana que viene. También he creado una réplica de este experimento en otro dominio para asegurarnos que se comportan de la misma manera y no es fruto de uno u otro site.

Crearemos una palabra de señuelo, que no existen resultados en Google para esa búsqueda, obviamente no la mencionaré en este post, la url a la que lleva el enlace hace una redirección hacia una tercera url que tampoco ha sido visitada por Google ni por nadie.

Poniéndolo un poco en orden, tenemos

  1. Una url inicial,  que se la vamos a dar a Google mediante Google Search Console -> Explorar como Google -> Enviar al índice la URL y las páginas enlazadas .



    Haciéndolo de esta manera nos aseguramos que todo lo que ocurra en este test no es afectado por otros factores

  2. Primera url intermedia, que hará una redirección 301 a la segunda url intermedia, la cual no ha tenido nunca contenido (la he creado hoy y solo redirecciona), ni Google la conoce en otro estado
  3. Segunda url intermedia, vamos a provocar dos redirecciones consecutivas.
  4. Url de destino, la cual responderá correctamente, tiene algo de contenido, y es la que debería posicionar Google para la palabra que usamos de señuelo en el enlace de la url inicial del experimento.

¿Que podría ocurrir?

Intentamos averiguar cómo se comporta el bot de Google a la hora de contabilizar y traspasar valor en las redirecciones 301, y sí, va a ser difícil sacar algo en claro, pero quién sabe...

Las posibles comportamientos que creo que podrían ocurrir son

  • Google comienza en la página inicial, y puede acceder ahora o en otro momento a la primera url intermedia. En este caso no nos interesa saber si accede en el mismo momento que rastrea la url de inicio, lo más seguro es que no, y que la anote en su cola de urls a rastrear cuado toque, dependiendo esto de muchos factores.
  • Cuando Google acceda a la primera url intermedia, ¿accederá inmediatamente a la url de destino de la redirección? ¿o se comportará de la misma manera que cuando accede a una url "normal" que se guarda esa url hacia dónde lleva la redirección para rastrearla cuando toque?

Saber esto es algo interesante, no sé si útil, pero sí interesante, ya que, en MI opinión, si Google accede inmediatamente es muy probable que la url intermedia no la almacene en su sistema y que directamente la hará equivalente a la url de destino de la redirección.

 

Comprobación de cómo se comporta Google

Para comprobarlo vamos a hacer un seguimiento de los logs de acceso al servidor para saber cuánto tiempo transcurre entre el acceso a las distintas urls.

Realmente pienso que Google hará una equivalencia, o un enlace simbólico de la url que genera la redirección 301 y la url de destino, anotando solo como una ambas urls

Se abren las apuestas!!

 

 


Javier Lorentehace Hace más de 3 años y 76 días

Opción 1. Pero te dejas de nombrar la clave, si hay inlinks hacia esos 301

Erriocahace Hace más de 3 años y 75 días

@javi sí, ese va a ser la evolución de este experimento. Añadir links hacia las 301 intermedias para comprobar si así accede más habitualmente.

Y si además eso conlleva que accede más a la url final, este experimento va a dar mucho juego :)

Nacho Benavideshace Hace más de 3 años y 59 días

Opción 1!!

Martin Maqueirahace Hace más de 2 años y 272 días

Seguro que guarda la URL original. Así ahorra volver a crawlearla. Pero a efectos de calificarla la cuenta como una destino final. Es decir para calcular el pr usa todas pero el pr lo asigna a la url final.



Lea otros artículos de Logs y Big Data

Últimos posts

Últimos comentarios


Lino

@India eso es debido a que si no solicitas la dimensión de página siempre hace los cálculos por propiedad, que solo tiene en cuenta el pr
Post: Datos incoherentes y cálculo de la posición media en Search Console

India

Buen día, muy buenas explicaciones! Justo estoy viendo las métricas de una consulta exacta. Cuando miro las páginas y sumo el total de cl
Post: Datos incoherentes y cálculo de la posición media en Search Console

FunnelPunk

@Lino probando mi script del futuro
Post: Errores críticos originados por el robots.txt

Lino

@Xavier que Google no pueda acceder no significa que no pueda indexarla. Lo que no hará es entrar, y por lo tanto, no podrá ver el conteni
Post: Errores críticos originados por el robots.txt

Xavier

Lino estoy haciendo un experimento y tengo una duda, si en una web donde puedes crearte un perfil de usuario capan mediante Robots.txt, pero
Post: Errores críticos originados por el robots.txt

Norek Beat

Realmente.. de verdad buen articulo, gracias. Aparte de la historia del principio,he comprendido por fin la posición media. No es ni la pri
Post: Datos incoherentes y cálculo de la posición media en Search Console

Lino

@seozamp sí se puede, mira por ejemplo el blog de @useo, seguro que tiene unos cua
Post: Informes y gráficas usando la API de Google Search Console

Henrique

Contenido rico! ¿Hay alguna forma de recopilar los datos de GSC a través de la API y verlos en Data Studio?
Post: Informes y gráficas usando la API de Google Search Console

rubiel taborda

hola amigo, he usado el plugins Lazy Load y la velocidad de la pagina ha mejorado muchom, creo que es una buena solucion, mas cuando es una
Post: Indexar imágenes en Google usando Lazy Load

Lino

@errioxa probando desde comentarios del site :)
Post: El valor de los logs para el SEO