Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Googlebot i inne roboty indeksujące - jak wykrywać, Indeksowanie stron z ograniczonym dostęp
xPatryk
post
Post #1





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 9.01.2004

Ostrzeżenie: (20%)
X----


Witam,

w jaki sposób skutecznie sprawdzić, czy strone odwiedza bot indeksujący jakiejś wyszukiwarki czy normalny użytkownik?

Chodzi mi o to, że większość stron w naszym serwisie (artykuły, forum, etc) jest dostępnych tylko dla zarejestrowanych użytkowników (rejestracja jest darmowa, nimniej wymagana ze względu na konieczność utrzymania wysokiego poziomu merytorycznego serwisu), ale zalezaloby nam na ich normalnym indeksowaniu przez wyszukiwarki, zwlaszcza, ze zawieraja wiele materialow niedostepnych nigdzie indziej w Polskim Internecie...


Tylko jak najlepiej sprawdzić, kto odwiedza stronę?

Pozdrawiam i proszę o pomoc
Patryk
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 15)
NoiseMc
post
Post #2





Grupa: Zarejestrowani
Postów: 398
Pomógł: 10
Dołączył: 24.11.2004
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Kod
$_SERVER['HTTP_USER_AGENT']

Zawiera informację o tym czym jest przeglądana Twoja strona.

W przypadku Googlebot jest to:
Kod
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)


IMHO nie wiem czy dobrym pomysłem jest wpuszczać na strony dostępne po zalogowaniu kogoś kto identyfikuje jako Googlebot bo można w prosty sposób podszyć się pod niego i zczytać całą zawartość strony czyli na przykład jeżeli ktoś "przedstawi się" jako Googlebot wysyłając w nagłówkach powyższy ciąg znaków może przeszukać całą stronę pod kątem na przykład plików do ściągania i ściągnąć je sobie bez logowania nie mówiąc już o wyciągnięciu całej treści strony.

Dodam, że odpada też sprawdzanie z jakiego IP pochodzi żądanie ponieważ Google wysyła swoje boty z różnych adresów.

Lepszym pomysłem byłoby wyciągnięcie słów kluczowych, które powinny zostać zaindeksowane przez Google i po rozpoznaniu, że odwiedza nas właśnie Google "zaserwować" mu stronę z czystym tekstem powrzucanym w <h1> i <p> nasyconym odpowiednimi słowami.

Ten post edytował NoiseMc 14.12.2005, 19:48:33
Go to the top of the page
+Quote Post
dtb
post
Post #3





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

Ostrzeżenie: (0%)
-----


po co ktos mialby sie podszywac pod googlebota, skoro rejestracja jest darmowa. tylko sobie trud zadaje!

EDIT: tak btw, to jest dobry sposob na oszukanie robota. mozesz zrobic specialna strone nasycona slowami kluczowymy, tagami <hX> itd. jezeli jednak przegladarka wykryje taki przekret (choc nie wiem jak bo strona jest generowana po stronie serwera) to moze to uznac za spam.

Ten post edytował dtb 14.12.2005, 19:56:04
Go to the top of the page
+Quote Post
xPatryk
post
Post #4





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 9.01.2004

Ostrzeżenie: (20%)
X----


Witam,

tak jak zauważył dtb, nie ma potrzeby podszywania się pod googlebota, gdyż my nie ograniczamy dostępu do stron tylko wymagamy od użytkowników rejestracji, aby możnabyło łatwo śledzić co robią, zarządzać komentarzami (można komentować wszystko, od zdjęć po artykuły) oraz by mieć możliwość kontaktu z użytkownikami (tudzież, przyznam szczerze, wysyłania im reklam (zgodnie z regulaminem), bo jednak z czegoś trzeba utrzymać serwis, w którym swoje artykuły prezentują wysokiej klasy specjaliści, weterynarze, hodowcy, zawodnicy, etc...)... A jeżeli wszystko byłoby dostępne bez rejestracji - nikt by się nie rejestrował...

Co do pozycjonowania słów kluczowych to chyba nie ma takiej potrzeby, bo dla 90% zapytań jesteśmy jedyną (jedną z kilku) stron zwracanych przez google...

A czy macie może wartości zwracane dla innych botów innych wyszukiwarek?

Pozdrawiam
Patryk
Go to the top of the page
+Quote Post
yavaho
post
Post #5





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Boty mozna wykryc np w ten sposob:
  1. <?php
  2. if(eregi('(googlebot)+|(msnbot)+|(altavista)+',$_SERVER["HTTP_USER_AGENT"])){
  3. // tresc lub linki tylko dla bota
  4. }
  5. ?>
Albo zupelnie odwrotnie. Mozna wykrywac przegladarki, a wszystko co nie zostanie zidentyfikowane traktowac jak bota.

Ale ja bylbym ostrozny z wpuszczaniem botow do zasobow dostepnych tylko po zalogowaniu. To tak jakby uzytkownik sie zalogowal i oddal myszke swojemu 2-letniemu dziecku, ktore by klikało we wszystko w co da sie kliknac na stronie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) . A jezeli sa tam przyciski typu: usuń moj profil, kopiuj cos tam, wyslij poczta cos tam! I co wtedy?
Go to the top of the page
+Quote Post
xPatryk
post
Post #6





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 9.01.2004

Ostrzeżenie: (20%)
X----


No fakt,
bede musial dodac instrukcje blokujaca wszystkie akcje... Bo potem bede mial 200 raportów o błedach ;p

Pozdrawiam
Patryk
Go to the top of the page
+Quote Post
Sh4dow
post
Post #7





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


jesli chodzi o podszywanie sie pod bota, albo generowanie specjalnej strony dla bota nie wiem czy zdaje zadanie. Podobno google potrafi podszywac sie pod przegladarki zeby sprawdzic czy nie roznia sie one od stron kiedy sa indeksowane przez bota.
Nie wiem na ile to prawda ale to slyszalem. Moze ktos moze to potwierdzic ?
Go to the top of the page
+Quote Post
yavaho
post
Post #8





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


To juz jest cloaking. Ale jak sie uzywa tej techniki rozwaznie to nic takiego sie nie stanie. W przypadku stron ktore sa dostepne po zalogowaniu googiel nie bedzie mial mozliwosci porownania tych stron, bo nie dostanie sie na te strony jako przegladarka, ale i tak przeciez te strony nie zmienia tresci. Tresc zmieni sie na jednej stronie (jedna wystarczy aby zrobic wejscie) i ta strona bedzie sie roznila tylko tym ze dla bota wyswietli o jeden link wiecej - jezeli ta strona generowana jest dynamicznie i pojawiaja sie na tej stronie inne losowe linki to nawet nie bedzie mozliwosci porownania.

Problemy natomiast moga pojawic sie gdy to jakis dociekliwy gostek zauwazy. Np na stronie mamy zainstalowany system wymiany linków. Robot wtedy moze zainstalowac linki na stronie niedostepnej dla zwyklego uzytkownika. I wtedy administrator tego systemu wymiany linków lub inna dociekliwa osoba moze zauwazyc ze linki znajduja sie na stronach, ktore to strony wedlug niego nie istnieją.
I to moze byc odebrane jako generowanie duzych ilosci niepotrzebnych stron w celu jakby sztucznego "podwyzszenia wartosci" strony, gdy wartosc strony ocenia robot.

Ten post edytował yavaho 15.12.2005, 01:34:35
Go to the top of the page
+Quote Post
voytass
post
Post #9





Grupa: Zarejestrowani
Postów: 113
Pomógł: 0
Dołączył: 15.04.2002
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jest taki modulik 'googleactivity', ktory bada czy dana strone, na korej on dziala odwiedzil robot indeksujacy. nie pamietam gdzie go znalalzem, chyba na Hotscripts - poszukaj.
Go to the top of the page
+Quote Post
xPatryk
post
Post #10





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 9.01.2004

Ostrzeżenie: (20%)
X----


A powiedzcie mi jeszcze, czy googlebot "ma w zwyczaju" używanie formularzy?

Tzn. większość funkcji na stronach oparta jest o pola typu select i przyciski typu button (submit, reset, renew, etc.)... Czy googlebot probuje w jakis sposob ich uzyc, czy tylko przechodzi po zwyklych linkach ?

Pozdrawiam
Patryk
Go to the top of the page
+Quote Post
yavaho
post
Post #11





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Mnie tez to interesowalo i tez do konca nie jesten pewien co tak naprawde robi boot. Byc moze podaza za linkiem, ktory jest w tagu <form> ale na pewno nie przekazuje zadnych zmiennych w $_POST[]. Nie powinien przekazywac - było by to niedopuszczalne, bo w ten sposób mógł by sie nawet zalogowac na stronie jako administrator.
Nie zauwazylem tez aby strony dostepne tylko za formularzem byly zaindeksowane w google. Jezeli zalezy na ich indeksacji takich stron, to trzeba zrobic jakies inne wejcie dla bota np w postaci sitemap.
Go to the top of the page
+Quote Post
Ozzy
post
Post #12





Grupa: Zarejestrowani
Postów: 204
Pomógł: 0
Dołączył: 26.12.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Za cloaking w google dostaje się bana stałego:)
Go to the top of the page
+Quote Post
yavaho
post
Post #13





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Cytat(Ozzy @ 2005-12-21 01:27:06)
Za cloaking w google dostaje się bana stałego:)
Ale ktos to musi najpierw zgłosić. I napewno nie dostanie sie bana za cloaking jednego slowa czy linka. To juz trzeba sie komus narazic lub byc zbyt beszczelnym w stosowaniu tej techniki.
Nie dawno był sobie taki konkurs pozycjonowania stron, w ktorym były dozwolone wszystkie nawet te nieetyczne techniki pozycjonowania. Nikt sie nie przejmowal tym ze dostanie bana, bo raczej kazdego (kto brał ten konkururs jako zabawa) bardziej interesowalo gdzie lezy ta granica ktorej nie mozna przekroczyc niz dostanie bana na bezwartosciowa domene. Konkurs mial chyba bardziej charakter lepszego poznania google niz zdobycie pierwszej nagrody. Wiec niektorzy mocno przeginali z niektorymi technikami pozycjonowanie nic sie z tym nie kryjąc (wlacznie ze mna) i nie stwierdzilem aby kogos ukaral za to googlebot.
Go to the top of the page
+Quote Post
Radarek
post
Post #14





Grupa: Zarejestrowani
Postów: 188
Pomógł: 0
Dołączył: 23.05.2005

Ostrzeżenie: (0%)
-----


Cytat(yavaho @ 2005-12-21 01:44:31)
Cytat(Ozzy @ 2005-12-21 01:27:06)
Za cloaking w google dostaje się bana stałego:)
Ale ktos to musi najpierw zgłosić.

Niekoniecznie. Google przeciez moze wejsc, podajac sie za dowolnego User-Agent'a i moze sprawdzic czy tresc bedzie generowana taka sama (podobna) czy zupelnie inna.
Go to the top of the page
+Quote Post
Ozzy
post
Post #15





Grupa: Zarejestrowani
Postów: 204
Pomógł: 0
Dołączył: 26.12.2003
Skąd: Rzeszów

Ostrzeżenie: (0%)
-----


Ostatnio miałem podobny problem, bo mi boty statsy psuły i zrobiłem cos takiego:
  1. <?php
  2.  
  3. public function detectBot($host) {
  4.  
  5. $botHosts = array('googlebot', 'msnbot', 'crawl', 'robot', 'spider', 'search', 'w3.org', 'rootmode');
  6. $botAgents = array('bot', 'avant', 'java', 'findlinks');
  7.  
  8. foreach($botHosts As $bot) if(strpos($host, $bot) !== false) { $this->markAsBot(); break; }
  9. foreach($botAgents As $bot) if(strpos($this->registry['request']['ua'], $bot) !== false) { $this->markAsBot(); break; }
  10.  
  11. }
  12.  
  13. ?>


Uwzględnia to tylko te boty, które akurat w przypadku tej strony zawyżały statystyki.
Wpis z avantbrowser też uznałem jako bota, bo to co robi ta nakładka to szczyt głupoty;)

Uznanie za bota ma dalsze konsekwencje w markAsBot(), czyli nie przekazywanie SessID w adresie itd....

Ten post edytował Ozzy 30.12.2005, 18:42:07
Go to the top of the page
+Quote Post
Termit_
post
Post #16





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 11.06.2005
Skąd: Gostyń

Ostrzeżenie: (0%)
-----


O, dzięki @Ozzy, przyda się (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 20:49