Revision [8888]
This is an old revision of BadBehavior made by JavaWoman on 2005-06-06 19:03:28.
Bad Behavior
Bad Behavior is a set of PHP scripts which prevents spambots from accessing your site by analyzing their actual HTTP requests and comparing them to profiles from known spambots. It goes far beyond User-Agent and Referer, however. Bad Behavior is available for several PHP-based software packages, and also can be integrated in seconds into any PHP script. (quote from the homepage).
Integration in wikka
- download it
- unzip the file and make the following changes:
- replace bad-behavior-generic.php in the directory with the following one:
- <?php
- /*
- http://www.ioerror.us/software/bad-behavior/
- Bad Behavior - detects and blocks unwanted Web accesses
- Copyright (C) 2005 Michael Hampton
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
- // This file is the entry point for Bad Behavior.
- // See below to customize it for your particular CMS or PHP application.
- // Preferably by the time this file is loaded, everything in your app will
- // be initialized, but no output sent to the browser. If output has been
- // sent, Bad Behavior will fail.
- ###############################################################################
- ###############################################################################
- // Configuration
- // Nothing will be written to a DB unless you implement DB queries below
- // Log failed requests to the database.
- $wp_bb_logging = TRUE;
- // Log all requests to the database, not just failed requests.
- $wp_bb_verbose_logging = FALSE;
- // How long to keep the logs around (in days).
- $wp_bb_logging_duration = 7;
- // Email address to contact you in case of problems
- // This will be shown to users on the error page, which means it will
- // be exposed to spammers! Bad Behavior will munge it automatically; you
- // should NOT munge it here!
- $wp_bb_email = $wakka->config['admin_email'];
- ###############################################################################
- # DO NOT EDIT BELOW THIS LINE
- ###############################################################################
- // Callbacks
- // generic code; you should reimplement these if you want logging and
- // database functions
- // return a UTC date in the format preferred by your database
- function wp_bb_date() {
- }
- // run a SQL query and return # of rows affected, or FALSE if query failed
- function wp_bb_db_query($query) {
- global $wakka;
- return $wakka->Query($query);
- }
- // Load core functions and do initial checks
- require_once(WP_BB_CWD . "/bad-behavior-core.php");
- ?>
- change bad-behavior-database.php the $wp_bb_log to
$wp_bb_log = $wakka->config['table_prefix']."bb_log";
- and upload the whole folder to 3rdparty/plugins/bad-behavior/
- add the following line to wikka.php
require_once("3rdparty/plugins/bad-behavior/bad-behavior-generic.php");
=> right before the// go !
- add
'bad-behavior' => '1',
to your wikka.config.php
To-do
- make it optional, i.e. having a config-option to turn it off
- using wikka-variables for table, admin-email instead of handcoding
- testing on a page who is interesting for spammers :)
CategoryDevelopment3rdParty