Как се справих със СПАМА в WordPress

Re: Как се справих със СПАМА в WordPress

Значи, ако отида директно на статията, няма да мога да коментирам? Аз имам навика да правя драг енд дроп и почти в 99.99% от случаите реферера ми е празен.

Не, ако отидеш директно на wp-comments-post.php, тогава няма да можеш да коментираш! Няма никакъв проблем да се отварят директно статиите и да се коментира. Просто не може директно да се параметризира wp-comments-post.php, което правят САМО ботовете.
 
Re: Как се справих със СПАМА в WordPress

Но те са ботове, не са браузъри, че да пазят Referer. Това е хедър, който обикновено браузърите създават и пренасят. Ботовете просто свалят някакви страници и на тяхна база директно отварят страниците с коментари и си вършат работата 🙂

Трябва да се изчака и да се види какъв ще е ефектът.

Ясно 🙂
Ами тествай го и пиши след време как е метода 🙂
 
Re: Как се справих със СПАМА в WordPress

Според мен това с въпроса е напълно излишно тормозене на потребителя. Както спомена Viktor Shapilov пак може да ти наблъскат спам.

Ето един стар вариант, които си ползвам от години и има достатъчно добри резултати (100% от автоматизираните роботи обикалящи на случаен принцип сайтове):

PHP:
<form method="post" action="add.php" id="add" style="padding:15px;">
<input type="hidden" name="test" id="test" value="1"/>
</form>

<script type="text/javascript">
$('#test').val('69');
</script>

Ето и примерно къде го ползвам:
http://notrial.info/events/add.php

Разбира се това няма да спре целенасочена атака (както и споменатия скрипт в първия пост), но поне не тормози потребителя.
 
Re: Как се справих със СПАМА в WordPress

PHP:
<form method="post" action="add.php" id="add" style="padding:15px;">
<input type="hidden" name="test" id="test" value="1"/>
</form>

<script type="text/javascript">
$('#test').val('69');
</script>

Би ли обяснил логиката на този скрипт? В смисъл какво точно прави val('69')?
 
Re: Как се справих със СПАМА в WordPress

При поема на данните от страна на сървъра трябва да се добави проверка:
PHP:
if($_POST['test']==69){
 // това не е робот
}else{
 // това е робот или браузер без javascript поддръжка
}

Идеята е, че браузър поддържащ JS ще сетне скритото поле на 69, а основно роботите не поддържат JS. Съответно ще пратят към сървъра грешна стойност за скритото поле.
 
Re: Как се справих със СПАМА в WordPress

При поема на данните от страна на сървъра трябва да се добави проверка:
PHP:
if($_POST['test']==69){
 // това не е робот
}else{
 // това е робот или браузер без javascript поддръжка
}

Идеята е, че браузър поддържащ JS ще сетне скритото поле на 69, а основно роботите не поддържат JS. Съответно ще пратят към сървъра грешна стойност за скритото поле.

Ок, вече е ясно 🙂
 

Back
Горе