Configuración correcta de robots.txt y sitemap
Capítulo 2: Fundamentos de búsqueda · Pregunta 30
robots.txt y sitemap.xml son los dos archivos básicos mediante los cuales un sitio web "se comunica" con los motores de búsqueda. El primero indica a los rastreadores "qué no deben rastrear", y el segundo les dice "estas páginas, por favor, rastréenlas". Una configuración adecuada puede mejorar enormemente la eficiencia de indexación; una configuración errónea puede hacer que todo el sitio desaparezca de los resultados de búsqueda.
Sintaxis básica de robots.txt
robots.txt debe colocarse en el directorio raíz del sitio web (por ejemplo, https://example.com/robots.txt), sintaxis básica:
User-agent: Baiduspider
Disallow: /admin/
Disallow: /search?
Allow: /
User-agent: Googlebot
Disallow: /admin/
Allow: /
Sitemap: https://example.com/sitemap.xml
Reglas clave:
User-agent: especifica a qué rastreador va dirigido (*representa a todos)Disallow: rutas prohibidas para el rastreoAllow: permite el rastreo (con prioridad sobre Disallow)Sitemap: declara la dirección del sitemap
¿Qué rutas deben bloquearse?
| Debe bloquearse | Causa |
|---|---|
| /admin/ o /wp-admin/ | Páginas de administración, sin valor SEO |
| /search? o /s? | Páginas de resultados de búsqueda interna, generan gran cantidad de páginas duplicadas de baja calidad |
| /cart/ /checkout/ | Carrito de compras y páginas de pago, sin valor de indexación |
| /?sort= /?filter= | Páginas con parámetros de ordenación/filtrado, causan contenido duplicado |
| /tag/ (según el caso) | Si el contenido de las páginas de etiquetas es demasiado escaso, se recomienda bloquearlas |
| /api/ | Direcciones de API, no deben aparecer en los resultados de búsqueda |
Lo que nunca debe bloquearse:
- Archivos CSS y JS (Baidu necesita renderizar la página)
- Directorio de imágenes (a menos que no quieras que las imágenes se indexen)
- MóvilPágina
Formato y especificaciones de sitemap.xml
Formato estándar de sitemap:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/page1</loc>
<lastmod>2025-06-15</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
Mejores prácticas:
- Cada archivo sitemap no debe superar las 50.000 URL y el tamaño del archivo no debe exceder los 50 MB
- Cuando se supera el límite, usar un archivo de índice de sitemap para dividir:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap-posts.xml</loc>
<lastmod>2025-06-20</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-products.xml</loc>
<lastmod>2025-06-18</lastmod>
</sitemap>
</sitemapindex>
Canales de envío
- Búsqueda de BaiduPlataforma de recursos: Servicio de búsqueda → Indexación normal → Envío de sitemap (admite formatos txt y xml)
- Google Search Console: Índice → Mapa del sitio → Añadir nuevo mapa del sitio
- Bing Webmaster Tools: Mapa del sitio → Enviar mapa del sitio
Baidu también admite el envío en tiempo real de URL de nuevas páginas mediante la "API de envío activo", especialmente útil para contenido perecedero (como noticias).
Frecuencia de actualización recomendada del sitemap
| Tipo de sitio web | Frecuencia de actualización | Descripción |
|---|---|---|
| Noticias | Cada hora/en tiempo real | Combinar con el envío activo de Baidu |
| Sitios de comercio electrónico | Diariamente | Alta frecuencia de cambios en la publicación y retirada de productos |
| Sitio web corporativo | semanal | Cambios de contenido poco frecuentes |
| Sitios de blog | Al publicar nuevos artículos | Se puede actualizar automáticamente con el CMS |
Errores comunes
- robots.txt tiene Disallow: / pero se olvidó de revertirlo: todo el sitio queda bloqueado, este es el error más catastrófico
- El sitemap incluye URL bloqueadas por robots:Contradicción lógica, el motor de búsqueda se confundirá
- El sitemap incluye páginas 404:Desperdicia la cuota de crawling
- Falsificación de la fecha lastmod:Si escribes la fecha actual cada vez, el motor de búsqueda ignorará este campo
- No se declara la ubicación del sitemap en robots.txt:Aunque no es obligatorio, se recomienda añadirlo
- Error de codificación del sitemap:Debe usar codificación UTF-8, los caracteres especiales en la URL deben escaparse
Recomendaciones prácticas
- Revisar robots.txt obligatoriamente antes del lanzamiento:Muchos sitios usan durante la fase de desarrollo
Disallow: /bloquear todo el sitio, y al lanzarlo olvidan modificarlo, provocando meses sin indexación - El sitemap solo debe contener las URL canónicas que deseas que se indexen:No incluyas páginas duplicadas con parámetros, no incluyas páginas noindex, no incluyas URL de origen de redirecciones
- Revisar la salud del sitemap una vez al mes: escanear con herramientas como Screaming Frog para asegurar que el sitemap no contenga páginas con errores 4xx/5xx
Resolverlo con herramientas de IA: generación de configuración de robots.txt y sitemap
Escenario 1: generar robots.txt según el tipo de sitio web
Mi sitio web es [sitio corporativo/e-commerce/blog de contenido], basado en [WordPress/desarrollo propio], los directorios que no necesito bloquear son [CSS/JS/imágenes], los que necesito bloquear son [panel de administración/página de búsqueda/páginas con parámetros]. Ayúdame a generar un robots.txt completo: escríbelo por separado para Baiduspider y Googlebot, bloquea el panel de administración y la búsqueda interna, permite CSS/JS/imágenes, y al final declara la dirección del sitemap. Además, comenta la función de cada línea de reglas para que pueda entenderlo.
Escenario 2: generar sitemap.xml a partir de una lista de URL existente
Esta es la lista de todas las URL de mi sitio web (pego el sitemap o la lista de URL). Ayúdame a: 1) filtrar las URL con parámetros y las que contienen admin/search y no deberían indexarse; 2) generar el XML según la especificación de sitemap, cada entrada con loc, lastmod (usando la fecha dada), changefreq, priority; 3) si supera las 50.000 entradas, dividirlo en formato sitemap index.
Escenario 3: revisar las "trampas" del sitemap
Este es un sitemap.xml (contenido pegado). Ayúdame a revisar: 1) si todas las URL coinciden con las reglas permitidas del robots.txt (también pego el robots.txt); 2) si incluye páginas noindex u orígenes de redirección 301; 3) si el lastmod es razonable (si todas son de hoy); 4) si la codificación y el escape del XML son correctos.
Escenario 4: generar expresiones regulares para bloquear URL duplicadas con parámetros
Las URL de mi sitio web llevan estos parámetros: ?sort=, ?filter=, ?page=, ?utm_source=, ?session_id=. Ayúdame a generar reglas de expresiones regulares en robots.txt para bloquear estas páginas con parámetros, y explica el alcance de coincidencia de cada una y los posibles casos de bloqueo accidental.
Nota: los límites de la IA
- robots.txt es una configuración de "veto absoluto": tras la generación con IA, es imprescindible revisar manualmente línea por línea, y sobre todo no debe aparecer
Disallow: /un bloqueo de todo el sitio; antes de publicar, accede directamente a robots.txt en el navegador para confirmarlo - el contenido del sitemap debe ser real:la IA solo genera a partir de las URL que le pegas, no sabe qué páginas son noindex o han sido eliminadas; debes filtrarlas tú mismo primero
- no dejes que la IA invente el lastmod:falsear el lastmod hará que los motores de búsqueda lo ignoren y reduzcan la confianza; las fechas deben provenir de la fecha real de modificación de tus archivos
