Q: I have been blocked by Bad Behavior! What do I do?
A: In extremely rare circumstances, Bad Behavior may block actual human visitors. Bad Behavior was designed to target robots, not people. If this happens, the profile presented by your browser matched that seen from actual malicious robots. In some cases, this is caused by over-aggressive personal firewall/browser privacy software. In other cases, this is caused by improperly configured Web proxy server software.
First, make a note of the technical support key and e-mail address shown on the error page. Then click the link to “fix it yourself” for suggestions on how you may be able to resolve the problem.
If you continue to have trouble, contact the e-mail address on the error page and be sure to provide the technical support key. This will allow the site administrator to tell you what you need to do to resolve the problem.
If you are the site administrator receiving a trouble report from a user, contact me and provide the technical support key and a copy of the logs which Bad Behavior stores in the database showing the IP address which was blocked. I will provide further assistance until the trouble is resolved. If using phpMyAdmin to export log entries, please export them in SQL format.
Q: Will Bad Behavior cause my site to load more slowly?
A: Maybe by a few milliseconds, but you won’t notice it. Bad Behavior has been split into several PHP files so that only the particular checks needed to analyze a given HTTP request are loaded. This speeds up execution time over the usual approach of putting everything in a single PHP file. Bad Behavior has been tested on high-traffic (100,000+ pageviews per day) sites where any slowdown would be noticed immediately, and passed these tests with flying colors. Bad Behavior is capable of handling hundreds of page views per second on a well-configured Web server. Under certain circumstances, you may find that Bad Behavior actually causes your site to load faster. See the next question.
Q: Will Bad Behavior reduce my site’s bandwidth usage?
A: Absolutely! This is one of the reasons for Bad Behavior’s existence. By preventing spambots and other malicious bots from ever accessing any of your pages, your bandwidth usage and server load will drop significantly. How much depends on how many malicious bots visit your site regularly. On higher traffic sites which pay a premium for bandwidth or CPU time, this may well decrease your web hosting bill. It can also help prevent a denial of service where your Web host shuts off your account because spambots were using up all the available resources.
Q: Does Bad Behavior block search engines such as Google?
A: No. Bad Behavior permits search engines which respect robots.txt and do not make excessive numbers of requests within a short time period. Google, Yahoo, Bing and most other search engine crawlers do not trigger Bad Behavior. If you notice that a search engine crawler has been banned by Bad Behavior, you can be certain that it was wasting your resources, not obeying robots.txt, or both.
Q: A spammer got past Bad Behavior! What now?
A: Bad Behavior targets robots which leave spam on blogs, forums, and other PHP-based software. If a spambot was able to post successfully, please check the following first.
Is Bad Behavior properly installed and enabled? I have received many reports of spammers getting past Bad Behavior, but upon investigation it turned out that Bad Behavior had been disabled or not installed properly.
If the above did not solve your problem, then please turn on verbose logging, wait for the spammer to post once more, and then send me a trouble report. Include the Bad Behavior verbose log entries matching the spammer’s IP address, which you can obtain from phpMyAdmin. (Please do not send all the entries in the log! Search the
bad_behavior table for the spambot’s IP address and export only those entries. Also, please do not send me the Apache logs; they do not include enough detail.) I can use this detailed information to analyze the spambot and block further attempts in the next release of Bad Behavior. If using phpMyAdmin to export log entries, please export them in SQL format.
Q: I don’t use WordPress; can I still use Bad Behavior?
A: Yes! As part of Bad Behavior’s modular design, we have provided a generic interface where Bad Behavior can be easily ported to virtually any PHP-based blog, forum, wiki or CMS. In fact, some ports are already available. If your PHP-based software is not listed, you may need a little PHP knowledge to get it fully integrated into your software, however. Look for a detailed porting guide to be published here soon!