it-swarm-es.tech

Evite que los robots obtengan contenido del sitio / artículo

Esta no es una pregunta sobre indexadores, la mayoría de ellos obedecen archivo robots.txt .

Pero tal vez notó casos publicitados en los que Facebook o Skype siguieron las URL publicadas por usuarios o que fueron enviados a través de mensajes instantáneos privados utilizando estas plataformas. Creo que estos dos no están (o pronto no estarán) solos haciendo esto.

El problema es que su visita a una URL específica no necesariamente tiene que obedecer robots.txt y podrían realizar una 'copia de seguridad' del texto que ven. Aunque administro sitios bastante estándar (organizaciones sin fines de lucro, pasatiempos, blog), no me gusta esta 'herramienta de marketing definitiva' (esta fue la mejor suposición de lo que es). Por lo tanto, estoy pensando en una forma elegante de evitar que este tipo de rastreo o rastreo provenga de estos sitios después de que obtengan el enlace. Algo como

  • toda la página no se muestra hasta que se pasa una prueba humana (luego se establece una cookie, por lo que ya no es necesario) - OR -

  • el sitio es accesible (la página con todos los módulos está presente, etc., no hay problema con los títulos de artículos publicados en ellos) pero el contenido del artículo principal (com_content) está inicialmente vacío y se reemplaza automáticamente usando Ajax en breve

¿Tiene alguna idea de cómo implementar la prevención contra estos rastreadores para que no obtengan ningún contenido de la URL de su sitio que visitaron?

5
miroxlav

No hay una solución fácil, porque los bots tienen un comportamiento diferente. Los dividiría en 4 categorías y soluciones para cada uno:

  1. Rastreadores legítimos (es decir, Google): estos generalmente respetan el archivo robots.txt y, como dijiste, no te interesa.

  2. Scrapers legítimos (es decir, Facebook): generalmente tienen el agente de usuario adecuado, por lo que puede bloquearlos en función de eso (el agente de usuario).

  3. Rastreadores que no respetan el archivo robots.txt: la forma más fácil es crear un enlace invisible (para humanos) en su página, ponerlo como rel = nofollow (para no tener problemas con los rastreadores legítimos) a ese enlace. El enlace debe ir a una página, donde registrará IP, UA y cosas similares del rastreador. Luego puede implementar una verificación en ese registro y, si hay coincidencia, simplemente no debería hacerlo el contenido.

  4. Uno de los scrappers: similar a Facebook, pero con agente de usuario falso. La única solución viable es verificar el soporte de cookies, sin embargo, no es 100% garantizado de que funcione. También bloqueará a los usuarios que hayan deshabilitado las cookies.

3
Ivo

Un método sería bloquear los accesos de los rastreadores, aunque esto depende de poder identificarlos.

El siguiente artículo tiene algunos buenos ejemplos de cómo mejorar la seguridad de Joomla.

http://docs.joomla.org/Htaccess_examples_%28security%29

Un método es utilizar el atributo HTTP_REFERER para bloquear el acceso, por ejemplo, a las imágenes, a menos que se carguen desde una página de su sitio.

Otra es usar el atributo HTTP_USER_AGENT para bloquear el acceso a motores particulares.

Para determinar las cadenas HTTP_USER_AGENT adicionales, necesitaría inspeccionar sus registros de acceso, o lo que he hecho en una ocasión es modificar la extensión Redirect para agregar HTTP_USER_AGENT en el comentario.

3
Peter Wiseman

Si no desea que el contenido sea accesible públicamente, use la ACL de Joomla para restringir el acceso, eliminando el acceso para el grupo de usuarios predeterminado (público). Si no haces eso, o algo similar, entonces tu contenido es público, la gente puede verlo, los bots pueden verlo.

Si no quiere que nadie vea su contenido, no lo publique en el mundo. Si lo publicas en el mundo, no tienes mucho que decir sobre quién lo ve.

3
Seth Warburton