Когда я использовал Lighttpd, я легко мог добиться этого с помощью таких записей. Так что все сайты были защищены.
Роботы Wget:
$HTTP["useragent"] =~ "Wget" {
$HTTP["url"] =~ "^/tagi(.*)" {
# $HTTP["url"] =~ "" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^/tags(.*)" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^/kom.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["querystring"] =~ "^(.*)strony(.*)" {
url.access-deny = ( "" )
}
$HTTP["querystring"] =~ "^(.*)page(.*)" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^(.*)/www/delivery/lg.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^(.*)/reklamy/(.*)" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^(.*)/ads/(.*)" {
url.access-deny = ( "" )
}
$HTTP["url"] =~ "^(.*)/www/delivery/ck.php(.*)" {
url.access-deny = ( "" )
}
}
Сайты с фейковым трафиком:
$HTTP["referer"] =~ "(.*)surfing.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["referer"] =~ "(.*)promote.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["referer"] =~ "(.*)trafficadder.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["referer"] =~ "(.*)traffic.php(.*)" {
url.access-deny = ( "" )
}
$HTTP["referer"] =~ ".*loic*." {
url.access-deny = ( "" )
}
$HTTP["referer"] =~ ".*autosurf*." {
url.access-deny = ( "" )
}
Как сделать то же самое в Apache? Я не хочу добавлять это в .htaccess.
Вы можете использовать mod_rewrite, что требует немного усилий. Вот некоторые отправные точки:
http://httpd.apache.org/docs/2.4/rewrite/access.html
Обратите внимание, в частности, на раздел «Блокировка роботов»: http://httpd.apache.org/docs/2.4/rewrite/access.html#blocking-of-robots
Смотрите также: http://en.linuxreviews.org/HOWTO_stop_automated_spam-bots_using_.htaccess