• ResueltoModerador almendron

    (@almendron)


    Tras leer el artículo de nuestro compañero @cybmeta ( http://goo.gl/UwYqIw ), me han surgido algunas dudas.

    En un mismo sitio tengo tres wordpress. Cada uno de ellos en su respectiva carpeta. Además, hay páginas HTML (la parte más antigua de la web que aún no he pasado a wordpress).

    Según he leído, el archivo robots.txt debe estar en el directorio raíz y así lo tengo. Lo he configurado para los tres wordpress y todo parece funcionar bien (Google no me bloquea nada).

    Ahora bien, ¿Los robots.tx que genera wordpress sirven para algo dado que en el directorio raíz del sitio ya hay uno? ¿debería borrar el del directorio raíz y dejar a wordpress que los cree de forma automática?

Viendo 8 respuestas - de la 1 a la 8 (de un total de 8)
  • Interesantes preguntas. No se me había ocurrido cubrir esa situación en el artículo.

    Dado que el Estándar de Exclusión de Robots sólo es válido en el directorio raiz, el robots.txt en un subdirectorio no sirve absolutamente para nada y será ignorado por cualquier buscador que implemente este estándar.

    Ahora bien, el directorio raíz hay que entenderlo como el directorio raíz de un sitio, y esto no siempre se corresponde con la ruta en el servidor.

    Se me ocurren tres ejemplos:

    1.- Si WordPress está instalado en un subdirectorio pero es accesible a través de la raíz del dominio principal, el robots.txt de WordPress SI sirve.

    2.- Si WordPress está instalado en un subdirectorio pero es accesible a través de un subdominio, el robots.txt de WordPress SI sirve ya que el subdirectorio es el directorio raíz para el sitio alojado en el subdominio.

    3.- Si WordPress está instalado en un subdirectorio y es accesible a través de un subdirectorio, el robots.txt de WordPress NO sirve ya que el directorio raíz para ese sitio no es manejado por WordPress.

    En mi opinión, siempre que el robots.txt de WordPress SI sirva hay que eliminar el archivo robots.txt real, si lo hay, y dejar que WordPress se encargue de él. Hay que tener en cuenta que si hay un robots.txt real, WordPress pierde la capacidad de modificarlo y por tanto cualquier plugin que utilice el API de WordPress para modificar el robots.txt no funcionará, por eso lo de eliminarlo.

    Salvo que se sepa muy bien lo que se está haciendo y se quiera hacer, claro.

    Moderador almendron

    (@almendron)

    En mi caso, cada WordPress está instalado en una subdirectorio y se accede a través de ellos (www.ejemplo.com/wp-1, www.ejemplo.com/wp-2, www.ejemplo.com/wp-3).

    Si te he entendido bien, en este caso NO sirve el robots.txt que genera cada WordPress.

    Yo así lo creía y por ello cree un robots.txt en el directorio raíz y allí puse lo correspondiente a cada wordpress. Por ejemplo:

    Disallow: /blog-1/wp-admin/
    Disallow: /blog-2/wp-admin/
    Disallow: /blog-3/wp-admin/

    Para el caso del plugin «Google XML Sitemaps», lo que hice fue:
    1.- Añadir al robots.txt:

    Sitemap: http://www.xxx.com/blog-1/sitemap.xml
    Sitemap: http://www.xxx.com/blog-2/sitemap.xml
    Sitemap: http://www.xxx.com/blog-3/sitemap.xml

    2.- En los ajustes del plugin desmarcar la opción «Añadir la URL del sitemap al archivo robots.txt virtual».

    Ya me dirás que te parece la solución y sobre todo si tengo alguna opción mejor.
    Gracias.

    Efectivamente, así es. Al menos que alguien opine otra cosa, creo que estamos de acuerdo en que lo has hecho correcto.

    A partir de WordPress 4.4 se introdujo esta línea:

    Allow: /wp-admin/admin-ajax.php

    Si quieres seguir al core, yo añadiría:

    Disallow: /blog-1/wp-admin/
    Disallow: /blog-2/wp-admin/
    Disallow: /blog-3/wp-admin/
    Allow: /blog-1/wp-admin/admin-ajax.php
    Allow: /blog-2/wp-admin/admin-ajax.php
    .....
    Moderador almendron

    (@almendron)

    Pues gracias por la información. A lo que tengo le añadiré lo del admin-ajax.
    Muchas gracias por la información.
    Un saludo.
    PD.
    Por cierto, buscando esta tarde informaicón, he encontrado este plugin: https://es.wordpress.org/plugins/pc-robotstxt/ y supongo que lo que pone es por defecto el que crea wordpress.

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    Disallow: /wp-includes/
    Allow: /wp-includes/js/
    Allow: /wp-includes/images/
    Disallow: /trackback/
    Disallow: /wp-login.php
    Disallow: /wp-register.php

    Moderador almendron

    (@almendron)

    Una última cuestión:

    Disallow: /trackback/
    Disallow: /wp-register.php

    No entiendo lo estas dos líneas. ¿hay una carpeta trackback y un archivo wp-register.php? Es que no entiendo la sintaxis.

    wp-register.php fue reemplazado por wp-login.php?action=register hace bastante tiempo, unos 10 años.

    trackback es la URL para los trackbacks, jeje, valga la redundancia. Se añade /trackback/ al final de las URLs de los posts, por lo que no estoy seguro si Disallow: /trackback/ tendría algún efecto, ya que como digo /trackback/ no existe en el directorio raíz. Sería en todo caso algo así Disallow: /*/trackback/` u otra, dependiendo de la estructura de la URL para los posts que se haya configurado.

    De todas formas, si intentas acceder directamente a tusitio.com/un-post/trackback/ serás redirigido a tusitio.com/un-post/, por lo que aunque se pusiera con la sintaxis correcta tengo dudas también de que tuviera algún efecto.

    Sobre ese plugin, añade más cosas que lo que pone WordPress por defecto. El robots.txt predeterminado de WordPress es actualmente:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    Las líneas que añade el plugin, además de lo comentado de wp-register.php y trackback, le faltaría permitir rastreo en /wp-includes/css/, /wp-includes/fonts/ y puede que otros directorios. Así que vuelvo a mi posición inicial: salvo que se sepa muy bien lo que se hace y se quiera hacer, mejor dejar el robots.txt predeterminado de WordPress.

    Moderador almendron

    (@almendron)

    Pues nada, lo dejo como lo tengo (añadiendo lo de admin-ajax.php).
    Muchas gracias por la información.

    De nada, un placer.

Viendo 8 respuestas - de la 1 a la 8 (de un total de 8)
  • El debate ‘robots.txt’ está cerrado a nuevas respuestas.