elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Evitar que Bot de Google vote noticias en mi web
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Evitar que Bot de Google vote noticias en mi web  (Leído 5,401 veces)
RicRed

Desconectado Desconectado

Mensajes: 66



Ver Perfil WWW
Evitar que Bot de Google vote noticias en mi web
« en: 17 Enero 2011, 12:19 pm »

Hola a todos los del foro, tengo un archivo de noticias en la cual tengo un enlace hacia votar.php que vota la noticia por id

Ahora los Bots de google votan las noticias, como evitaria esto?

Saludos..


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #1 en: 17 Enero 2011, 14:32 pm »

Código
  1. <?php
  2.  
  3. if(stristr($_SERVER['HTTP_USER_AGENT'],'google')) {die('Fuera google! no estas admitido xD');}
  4.  
  5. ?>
Ponlo en las primeras lineas.

Saludos


En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #2 en: 17 Enero 2011, 17:06 pm »

Hola a todos los del foro, tengo un archivo de noticias en la cual tengo un enlace hacia votar.php que vota la noticia por id

Ahora los Bots de google votan las noticias, como evitaria esto?

Saludos..

Viendo que no hacer reconocimeinto de los bots, entonces me imagino que no estas contabilizando bien las visitas a tu sitio, cierto ??

Lo primero que te recomiendo hacer, es crees un script que reconoce los diferentes bots en la red, posteriormente esto te ayudara para saber contabilizar las visitas, así podrás discernir entre un bot y un usuario y contabilizar visitas de usuarios reales.

Y ahora si podrás también tener un mejor control sobre votaciones, vistas de noticias, hacerte un top 10 mas real, etc, etc...

Saludos !
En línea

wirelesswifi

Desconectado Desconectado

Mensajes: 128



Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #3 en: 17 Enero 2011, 17:08 pm »

Código
  1. <?php
  2.  
  3. if(stristr($_SERVER['HTTP_USER_AGENT'],'google')) {die('Fuera google! no estas admitido xD');}
  4.  
  5. ?>
Ponlo en las primeras lineas.

Saludos

Ok, gracias drvy | BSM ahora para yahoo seria asi?

Código
  1. <?php
  2.  
  3. if(stristr($_SERVER['HTTP_USER_AGENT'],'yahoo')) {die('No admitido');}
  4.  
  5. ?>

Tengo una duda, es google o googlebot

Código
  1. <?php
  2.  
  3. if(stristr($_SERVER['HTTP_USER_AGENT'],'googlebot')) {die('No admitido');}
  4.  
  5. ?>

Saludos..
En línea

wirelesswifi

Desconectado Desconectado

Mensajes: 128



Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #4 en: 17 Enero 2011, 17:11 pm »

Viendo que no hacer reconocimeinto de los bots, entonces me imagino que no estas contabilizando bien las visitas a tu sitio, cierto ??

Lo primero que te recomiendo hacer, es crees un script que reconoce los diferentes bots en la red, posteriormente esto te ayudara para saber contabilizar las visitas, así podrás discernir entre un bot y un usuario y contabilizar visitas de usuarios reales.

Y ahora si podrás también tener un mejor control sobre votaciones, vistas de noticias, hacerte un top 10 mas real, etc, etc...

Saludos !

Si es cierto, ahora para las visitas en el archivo noticias.php insertaria el mismo codigo de arriba?

Saludos.
En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #5 en: 17 Enero 2011, 17:19 pm »

Si es cierto, ahora para las visitas en el archivo noticias.php insertaria el mismo codigo de arriba?

Saludos.

Mira para saber los nombres de los bots, no hay como primero hagas un LOG completo sobre quienes entran, vaya, detectes el navegador, lenguaje e ip, con esto conforme pase el tiempo notaras que existen personas (eso crees tu) que entran con un navegador que tiene por nombre: bing o google, es mas que logico que no es una persona, y se trata del bot webcrawler (un buscador), asi que, conforme vas observando tu log y te van callendo los Bots, vas descubriendo su nombre real.

Ahora, conforme vas reconociendo mas bots, yo te recomiendo te crees una funcion mas o menos asi:

Código
  1. <?php
  2. function is_bot($navegador)
  3.      {
  4.      $m= strtolower($navegador); // convertimos el nombre a minuscular
  5.      $bots= array(
  6.            "google", "otro", "otro", "otro");
  7.  
  8.      # ahora comprobar si es un bot
  9.      foreach( $bots as $data )
  10.            {
  11.            if( !strcmp($data, $m) ) # si "m" es igual que "data", entonces es un bot
  12.                  return 1; # retornamos 1, es un bot
  13.            }
  14.      return 0; # exito, no es bot
  15.      }
  16.  
  17. if( !is_bot($_SERVER['HTTP_USER_AGENT']) ) # si no es bot
  18.      {
  19.      # guardamos datos ya sea log o votacion, o lo que sea...
  20.      }
  21. ?>

Asi ahorras codigo y solo invocas la funcion is_bot() pasandole como argumento el $_SERVER['HTTP_USER_AGENT'] y si devuelve 1 entonces es un bot, sino, entonces es un usuario real.

OJO: hay que ir observando tu LOG COMPLETO para que vayas conociendo los bots, de nada sirve busques en google nombre de bots o webcrawlers, estos a veces cambian de nombre cada varios a~os o cuando se les plasca, por ejemplo: el bot de google se llamaba antes como googlebot, ahora se llama google.

Saludos !
« Última modificación: 17 Enero 2011, 17:23 pm por Diabliyo » En línea

Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.336

he vuelto :)


Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #6 en: 17 Enero 2011, 17:23 pm »

no bastaria con rel="nofollow" ? aunque si... si se pasa el nofollow habria que poner seguridad extra con los bots
En línea

Ojo por ojo, y el mundo acabará ciego.
Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #7 en: 17 Enero 2011, 17:25 pm »

no bastaria con rel="nofollow" ? aunque si... si se pasa el nofollow habria que poner seguridad extra con los bots

Si quieres evitar los bots y tienes un sitio web o blog, entonces es una tonteria :S... nadie indexaria tu sitio, solo tu y tus amigos conocerian tu pagina.

Eso del nofllow|noindex es solo para sitio donde requieres privacidad, por ejemplo Software para empresa (plataforma web), donde solo y unicamente quieres que accedan proveedores o personas especificas y no cualquier persona.

Pero ya estamos hablando que seria un plataforma, osea, que para ver el contenido necesitarias un user y clave.

Saludos !
En línea

wirelesswifi

Desconectado Desconectado

Mensajes: 128



Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #8 en: 17 Enero 2011, 17:34 pm »

Mira para saber los nombres de los bots, no hay como primero hagas un LOG completo sobre quienes entran, vaya, detectes el navegador, lenguaje e ip, con esto conforme pase el tiempo notaras que existen personas (eso crees tu) que entran con un navegador que tiene por nombre: bing o google, es mas que logico que no es una persona, y se trata del bot webcrawler (un buscador), asi que, conforme vas observando tu log y te van callendo los Bots, vas descubriendo su nombre real.

Ahora, conforme vas reconociendo mas bots, yo te recomiendo te crees una funcion mas o menos asi:

Código
  1. <?php
  2. function is_bot($navegador)
  3.      {
  4.      $m= strtolower($navegador); // convertimos el nombre a minuscular
  5.      $bots= array(
  6.            "google", "otro", "otro", "otro");
  7.  
  8.      # ahora comprobar si es un bot
  9.      foreach( $bots as $data )
  10.            {
  11.            if( !strcmp($data, $m) ) # si "m" es igual que "data", entonces es un bot
  12.                  return 1; # retornamos 1, es un bot
  13.            }
  14.      return 0; # exito, no es bot
  15.      }
  16.  
  17. if( !is_bot($_SERVER['HTTP_USER_AGENT']) ) # si no es bot
  18.      {
  19.      # guardamos datos ya sea log o votacion, o lo que sea...
  20.      }
  21. ?>

Asi ahorras codigo y solo invocas la funcion is_bot() pasandole como argumento el $_SERVER['HTTP_USER_AGENT'] y si devuelve 1 entonces es un bot, sino, entonces es un usuario real.

OJO: hay que ir observando tu LOG COMPLETO para que vayas conociendo los bots, de nada sirve busques en google nombre de bots o webcrawlers, estos a veces cambian de nombre cada varios a~os o cuando se les plasca, por ejemplo: el bot de google se llamaba antes como googlebot, ahora se llama google.

Saludos !

Este codigo me serviria para guardar un log de bots de buscadores, y a la vez poner el proceso de votacion.

En el archivo robots.txt lo tengo asi:

Código:
# Negando el acceso a un archivo
Disallow: /votar.php

En el cual negaria el acceso al archivo votar.php

Gracias Diabliyo y a todos los que me ayudaron.

Saludos!
En línea

Diabliyo


Desconectado Desconectado

Mensajes: 1.441


shell# _


Ver Perfil WWW
Re: Evitar que Bot de Google vote noticias en mi web
« Respuesta #9 en: 17 Enero 2011, 17:53 pm »

Este codigo me serviria para guardar un log de bots de buscadores, y a la vez poner el proceso de votacion.

En el archivo robots.txt lo tengo asi:

Código:
# Negando el acceso a un archivo
Disallow: /votar.php

En el cual negaria el acceso al archivo votar.php

Gracias Diabliyo y a todos los que me ayudaron.

Saludos!

La idea es buena y existen muchos que tal vez lo hagan asi, pero segun mi experiencia te recomiendo trates de hacerlo tambien por codigo, porque no todos los robots tienen un nombre :D, vaya, muchos acceden mas de 10 veces por dia (lo he visto en mi log), indexan el sitio, tienen un IP muy corta (por ejemplo: 67.45.89.14), la variable $_SERVER['HTTP_USER_AGENT'] esta vacia, no se detecta el S.O, ni el lenguaje.

Y hay otros que no se detecta el $_SERVER['HTTP_USER_AGENT'], pero si el S.O, el lenguaje y su ubicacion geografica, por ejemplo los buscadores Rusos y todos aquellos nuevos que igual ni conocemos.

Todos estos, si se diera el momento, estarian accediendo a tu archivo y haciendote un show otra vez :D

Saludos !
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines