Soporte » Seguridad » Proteger Uploads De Una Zona Privada

  • pablog

    (@pablogutierrez)


    Hola Foro de WordPress!

    Tenemos un sitio web con una zona pública y otra privada. Utilizamos un plugin para que las páginas y entradas de la zona privada sólo puedan ser vistas por usuarios registrados.

    Hace poco, vimos que Google indexó contenido (documentos, imagenes, etc) de la zona privada. Por esta razón, agregamos la carpeta /wp-content/uploads/ en robots.txt

    Sin embargo, parece que esto nos afectó FUERTEMENTE en nuestra calificación SEO, ya que la zona pública contiene imágenes, videos y otro contenido hospedado en la carpeta Uploads. Google Webmaster Tools indica que hay un problema de permisos para indexar la zona publica con contenido “no indexable”.

    Queremos que nuestro sitio web sea seguro pero no sabemos como indicarle a Google qué sí debe indexar y qué no debe indexar.

    Alguna sugerencia o ayuda?

    Muchas gracias!

Viendo 8 respuestas - 1 de 8 (de 8 total)
  • Moderador almendron

    (@almendron)

    ¿Podéis indicar la url de vuestro sitio? Quisiera echar un vistazo al robots.txt

    pablog

    (@pablogutierrez)

    Hola Almendron,

    Gracias por tu respuesta. Desafortunadamente no puedo enviarte la URL por seguridad. Sin embargo, esto es lo que tenemos en nuestro robots.txt:

    User-agent: *
    Disallow: /wp-admin/
    Disallow: /wp-content/
    Disallow: /wp-content/uploads/

    Qué opinas?
    Gracias.

    Moderador Fernando Tellado

    (@fernandot)

    Si le dices a Google que no indexe tus uploads no lo hará, y tu SEO se penaliza, eso ya lo has comprobado.

    Ahora bien, ¿solución? Claramente, si no quieres que Google indexe solo algunos uploads usa un sistema de descargas donde puedas configurar otra ruta de subidas y hacer noindex de esa ruta, no de la global de WordPress.

    Casi cualquier plugin de descargas permite elegir la ruta de subidas.

    Moderador Jose Conti

    (@jconti)

    En cualquier caso, creo que hay algo que no está correctamente configurado, ya que si desde dónde se enlaza es una zona privada, se entiende que Google tampoco puede entrar, por lo tanto, no tiene forma de saber que esos archivos existen. Google sigue URLs, no accede a un directorio (que por seguridad entiendo que tendrá un “no listado” en Apache, y mira todos los archivos que hay.

    Por lo tanto tienes algo en abierto que está dando a conocer todos los archivos que existen, así rápido, se me ocurre un sitemap que los está publicando.

    Revisa que no tengas algo por ahí que lo esté publicando.

    Moderador Fernando Tellado

    (@fernandot)

    Google no indexa URLs privadas, con login para acceder, porque no ve su contenido, pero sí una carpeta y todos los archivos que contenga a la que tenga acceso, salvo que le indiques lo contrario

    Moderador Jose Conti

    (@jconti)

    @fernandot, si el servidor está bien configurado con un no listing, no es así.

    Un ejemplo:

    Una imagen tuya:
    https://ayudawp.com/wp-content/uploads/2018/05/guia-privacidad-wordpress.png

    El directorio donde está:

    https://ayudawp.com/wp-content/uploads/2018/05/

    No te va a mostrar nada, solo un 404, por lo tanto Google no sabe lo que hay ahí dentro.

    Efectivamente, el sistema es como comenta @jconti.

    En el caso concreto, lo que habría que hacer es dejar indexar todo, excepto algunas cosas. Para esas cosas se debería usar un listado concreto al no tener una carpeta de cosas públicas y cosas privadas.

    Para que se indexe todo en general, pero no elementos en particular lo mejor es devolver a determinados ficheros privados una cabecera de NoIndex, sean del tipo que sean.

    Teniendo en cuenta esto, deberías, por ejemplo, subir que tus ficheros privados estén como /wp-content/uploads/ y que todos los ficheros se llamen, por ejemplo privado- seguido del nombre del fichero que quieras. Ejemplo:

    /wp-content/uploads/privado-imagendeejemplo.jpg

    Una vez tengas este formato, puedes configurar tu servidor Apache (mediante .htaccess) o un nginx u otro sistema de forma que cuando se cumpla la regla de que un fichero tiene el formato:

    /wp-content/uploads/privado-.+

    le devuelva la cabecera con este contenido:

    X-Robots-Tag: noindex, noarchive

    Un ejemplo para el caso de Apache HTTPD en el fichero .hataccess podría ser similar a esto:

    <FilesMatch "/wp-content/uploads/privado-\.+">
      Header add X-Robots-Tag: noindex, noarchive
    </FilesMatch>

    A partir de ese momento, cualquier fichero que se suba mediante el panel y comience con el texto “privado-” aunque sea leido por Google (o cualquier otro) nunca será mostrado en los resultados de búsqueda.

    Esto, implica, que el robots.txt no es necesario limitar nada del /wp-content/uploads/

    • Esta respuesta fue modificada hace 1 semana, 1 día por  Javier Casares. Razón: Faltaba el "Header add"
    pablog

    (@pablogutierrez)

    Hola a todos,

    MUCHAS gracias por todos los consejos y posibles soluciones.

    Vamos a revisar la que mejor consideremos para nuestro caso.

    De nuevo muchas gracias.
    Saludos.

Viendo 8 respuestas - 1 de 8 (de 8 total)
  • Debes estar registrado para responder a este tema.