¿Google cambió cómo procesan robots.txt en Discourse?

Mi tablero ha estado vinculado desde mi sitio durante un par de semanas y ya envié la URL a Google. Recibí una advertencia de ‘no index’, pero parece que solo afecta a las páginas de perfil, lo cual es bueno.

Sin embargo, aún no aparece nada en Google. ¿Hay algo que deba hacer desde el lado del tablero, o simplemente es cuestión de esperar a que Google lo indexe?

Quizás puedas probar https://search.google.com/search-console/ ?

Parece indicar que las páginas de los posts están bloqueadas por robots.txt, pero eso no es algo que yo haya hecho. ¿Hay alguna configuración en Discourse que deba cambiar para permitir el acceso? Gracias.

Hay una configuración del sitio: busca allow index in robots txt en tus ajustes del sitio; debería estar habilitada (lo está por defecto).

Gracias, Sam. Esa opción está marcada, ¿es la forma correcta?

Lo siento, estoy confundiendo las cosas. Parece que las URLs bloqueadas son las equivalentes a los feeds RSS.

Supongo que solo se trata de esperar a que Google actualice o rastree el sitio.

Sí, esto sigue repitiéndose y sigue generando problemas de soporte.

Googlebot es bastante molesto. No puedes indicarle en robots.txt que no deseas que algo sea indexado. Estamos trabajando en una solución para complacer a Googlebot, pero llevará un tiempo implementarla.

  • Le decimos a Googlebot en robots.txt: «Oye… no te dediques a indexar todas las páginas .rss del sitio».

  • Googlebot encuentra un enlace en algún lugar a un archivo .rss en el sitio.

  • Luego, Googlebot se queja con los administradores del sitio diciendo que hay un archivo .rss en el sitio, pero no sabe qué hacer con el enlace porque no tiene permiso para indexarlo. A veces incluso incluye este contenido en los resultados de búsqueda.

  • Los administradores del sitio se quejan en Meta.

Nuestra solución general aquí es simplemente permitir que Googlebot recorra cada página del sitio y utilizar etiquetas canónicas y señales de indexación en las cabeceras HTTP para dirigirlo hacia el éxito.

Estoy trabajando con @jomaxro en esto y ya hemos logrado buenos avances.

(fyi @codinghorror)

Gracias por la actualización, Sam. Todo tiene sentido y entiendo tu situación. No soy experto en SEO, pero antes gestionaba sitios web más grandes y trabajaba con equipos de SEO; en los foros, a menudo era muy complicado.

Para aclarar, esto no tiene nada que ver con ser un foro de discusión. Se relaciona con la … interesante … forma en que Google trata el archivo robots.txt. Ver Robots.txt Introduction and Guide | Google Search Central  |  Documentation  |  Google for Developers

Una página bloqueada por robots.txt aún puede ser indexada si se enlaza desde otros sitios
Aunque Google no rastreará ni indexará el contenido bloqueado por robots.txt, es posible que aún encuentre e indexe una URL no permitida si se enlaza desde otros lugares de la web. Como resultado, la dirección URL y, potencialmente, otra información públicamente disponible, como el texto ancla en los enlaces a la página, pueden seguir apareciendo en los resultados de búsqueda de Google. Para evitar correctamente que tu URL aparezca en los resultados de búsqueda de Google, debes proteger con contraseña los archivos en tu servidor o usar la etiqueta meta noindex o el encabezado de respuesta (o eliminar la página por completo).

Durante mucho tiempo hemos incluido páginas que no queremos que sean indexadas en el archivo robots.txt predeterminado que tiene cada sitio de Discourse. Esto funcionaba perfectamente hasta ahora. En algún momento del pasado, esto ya no fue suficiente; Google decidió indexar páginas enlazadas desde otros lugares, incluso si estaban prohibidas mediante robots.txt.

Así que a principios de este año comenzamos a probar la inclusión de encabezados noindex en ciertas páginas. Esto funcionaría muy bien, excepto que ahora terminamos con un conflicto entre robots.txt y el encabezado. Ver Block Search Indexing with noindex | Google Search Central  |  Documentation  |  Google for Developers

¡Importante! Para que la directiva noindex sea efectiva, la página no debe estar bloqueada por un archivo robots.txt. Si la página está bloqueada por un archivo robots.txt, el rastreador nunca verá la directiva noindex y la página aún puede aparecer en los resultados de búsqueda, por ejemplo, si otras páginas la enlazan.

Esto nos lleva a hoy. Estamos probando la eliminación de ciertas páginas del archivo robots.txt. Debemos tener cuidado, ya que estamos realizando todos estos cambios basándonos en la documentación de Google, por lo que sabemos que estaremos bien con Googlebot, pero también necesitamos verificar otros rastreadores importantes para asegurarnos de no causar problemas allí.

Citado para enfatizar. Google cambió su comportamiento aquí, nosotros no, así que tomará un poco de tiempo adaptarse.

Hola Jeff, todo eso tiene sentido para mí y lo entiendo. Solo quería confirmar que no podría haber hecho algo para ocultar las páginas de los hilos de mi configuración en Google. La página principal y las categorías aparecen en Google, pero ninguna de las páginas de los hilos, y ya han pasado un par de meses. Este es mi sitio: https://community.jackwallington.com/

Creo que hemos realizado todos los ajustes de nuestra parte para adaptarnos a los recientes cambios en el comportamiento de Google. Quizás @jomaxro pueda confirmarlo. Deberías usar la última versión de Discourse.

No estoy seguro, tendré que verificarlo. Creo que hemos realizado algunos cambios manuales en robots.txt (solo en Meta) durante las pruebas…

Al observar discourse/app/controllers/robots_txt_controller.rb at main · discourse/discourse · GitHub, parece que los cambios son locales (solo Meta). Lo arreglaré; aún tenemos algunas pruebas de larga duración en progreso, pero estoy bastante seguro al respecto.

Cambios necesarios realizados según

¿Podría ser que tenga una etiqueta no index en algún lugar para las páginas de entradas? Aunque Google dice que ahora la ignora.

A menos que hayas instalado un complemento para agregar eso, no se me ocurre cómo se podría añadir ese encabezado. Google no ignora el encabezado noindex. Google ignora robots.txt cuando otros sitios enlazan a tu página. Google sí lo respeta al rastrear, por eso el commit mencionado elimina las entradas de robots.txt en favor de los encabezados noindex agregados anteriormente.

Te sugiero registrarte en Google Search Console para que puedas ver directamente lo que ve Google. Quizás haya otro problema que impide que los temas sean indexados.

Gracias, Joshua. Google Search Console parece estar bien y dice que todos los hilos están listados. Es muy extraño: cuando los busco, las páginas de los hilos no aparecen, pero sí las de inicio y las de categoría.

Voy a revertir esto y hacer que esta condición sea explícita para Googlebot.

Googlebot es un rastreador muy inteligente, pero muchos otros rastreadores no lo son tanto.

Vale. Ten en cuenta que también hay que revertir un commit posterior.

He creado este PR para resolver esto:

Google mantiene su regla especial y lanzamos con una mejor protección para varios bots que no son tan avanzados. El robots predeterminado ahora se ve así:

# Ver http://www.robotstxt.org/robotstxt.html para documentación sobre cómo usar el archivo robots.txt
#
User-agent: mauibot
Disallow: /


User-agent: semrushbot
Disallow: /


User-agent: ahrefsbot
Disallow: /


User-agent: blexbot
Disallow: /


User-agent: seo spider
Disallow: /


User-agent: *
Disallow: /admin/
Disallow: /auth/
Disallow: /assets/browser-update*.js
Disallow: /email/
Disallow: /session
Disallow: /user-api-key
Disallow: /*?api_key*
Disallow: /*?*api_key*
Disallow: /badges
Disallow: /u
Disallow: /my
Disallow: /search
Disallow: /tags
Disallow: /g
Disallow: /t/*/*.rss
Disallow: /tags/*.rss
Disallow: /c/*.rss


User-agent: Googlebot
Disallow: /admin/
Disallow: /auth/
Disallow: /assets/browser-update*.js
Disallow: /email/
Disallow: /session
Disallow: /user-api-key
Disallow: /*?api_key*
Disallow: /*?*api_key*