Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zabezpiecznie przed automatami
Forum PHP.pl > Forum > PHP
tikky
Witam,

Na stronie serwisu, ktory przygotowuje www.cenozerca.pl mam mozliwosc glosowania - takie 3 lapki - linki. Wszystko pieknie, ladnie ale widze ze chyba jakies roboty przeszukujace strone klikaja na linki w wyniku czego oceny sie zmieniaja a nie ma to nic wspolnego z rzeczywisty stanem.

Jak sie przed tym zabezpieczyc? W formularzach kontaktowych zrobilem funkcje, ktora generuje obrazek - to dziala - ale nie widze sensu robienia zabezpieczenia obrazkiem przed glosowaniem. Wszak na setkach innych stron wystarczy kliknac i wszystko dziala - np. w serwisie film.onet.pl

Prosze o porade jak zabezpieczyc sie przed glosowaniem przez automaty.
Wiem ze jedna z metod jest mozliwosc glosowanie tylko przez zalogowanych uzytkownikow ale tego chcialbym uniknac.

pozdrawiam

Tikky
Xardian
na twoim miejscu dodal m checkboxa z byborem jesteś botem? bot pujdzie po standardowym jak dasz 1 tak domyślne 2 nie
qrees
Jeżeli nie chcesz, żeby roboty wchodziły na jakieś strony, to po prostu rób formularz zamiast linku. W formularzu możesz dodać trzy przyciski z odpowiednim obrazkiem. Będzie wyglądać tak samo, a roboty nie będą na to wchodzić, bo roboty nie wysyłają formularzy.
tikky
No z tym ze roboty nie wysyłają formularzy to się nie zgodze. Na jednej ze stron, na której nie miałem zabezpieczenia zasypywany byłem spamem z formularzy.

A np. na stronie www.opensubtitles.pl działa taki licznik (wlasciwe to jest mozliwosc glosowania za pomocą przycisków a nei liczni
) bez formularzy i bez dodatkowych pytań. Czy nie ma jakiegoś innego sposobu na obronę przed tym?
qrees
Cytat(tikky @ 7.12.2007, 16:56:17 ) *
No z tym ze roboty nie wysyłają formularzy to się nie zgodze. Na jednej ze stron, na której nie miałem zabezpieczenia zasypywany byłem spamem z formularzy.

A np. na stronie www.opensubtitles.pl działa taki licznik (wlasciwe to jest mozliwosc glosowania za pomocą przycisków a nei liczni
) bez formularzy i bez dodatkowych pytań. Czy nie ma jakiegoś innego sposobu na obronę przed tym?



No to zależy o jakich robotach mówimy. Jeżeli jest to robot mający na celu zasypanie cię spamem, utrudnienie Ci życia, zniszczenie strony, to taki zwkły formularz nie pomoże. Wtedy do takiego formularza najlepiej dodać jakieś Captcha.

Natomiast w przypadku robotów wyszukiwarek (google, yahoo, itp...) w zupełności powinno wystarczyć. Takie roboty nawet jeżeli teoretycznie potrafiłyby wchodzić przez formularze (zwłaszcza z metodą POST), to nie powinny, gdyż formularza oznacza, że jego wysłanie powoduje zmianę na stronie. Czyli w praktyce, wszędzie gdzie można coś zmienić na stronie umieszczaj formularz (z metodą POST), a nie zwykły link.

Co do tego licznika (nie wiem o jaki chodzi bo chyba zły adres podałeś) to można do linków dodawać jeszcze rel="nofollow". Zapomniałem o tym, ale nie jest to idealne rozwiązanie. Na złośliwe roboty i tak nie pomoże. Przykładowo taki link powinien wyglądać tak:
Kod
<a href="http://strona.pl" rel="nofollow">strona</a>

Teoretycznie roboty nie powinny tam wchodzić, w praktyce jest różnie.
b_chmura
Umieść na stronie ukryty link (nie widoczny dla user'a) który będzie spisywał numery ip i wykorzystywał je do blokowania dostępu do strony.
User (człowiek) na ukrytą stronę nie wejdzie (chyba że zawzięcie będzie tego chciał) a bot tak.
.chudy.
Boty potrafią odczytać czy masz ustawiony atrybut hide. Nie jest wkońcu to takie trudne smile.gif . Jednym z ciekawszych sposobów jaki usłyszałem to zastoswanie javascript i opcji onmousemove (czy jakoś tak, nie znam js). Tzn. jak użytkownik ruszy myszką przy przeglądaniu strony będzie mógł zagłosować. Oczywiście ma to swoje minusy np. nie da rady zagłosować przez telefon.
Moli
Utwórz na serwerze, w katalogu głównym plik robots.txt o treści
Kod
User-agent: *
Disallow: /glosuj.php


glosuj.php zamien na nazwę pliku w którym odbywa się głosowanie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.