Thanks for this great plugin, nice work!

Is there a reason why you redirect blocked IPs to the page_not_found page? I think a 410 redirect would be more suitable.

I have changed in includes/classes/observers/class.abuseipdb_observer.php the three instances of:
Code:
header('Location: /index.php?main_page=page_not_found');
                exit();
to:
Code:
header('HTTP/1.0 410 Gone');
                zen_exit();
@johnjlarge
could be a fix for your headers already sent issue as well