由 Bad Behavior 2.0.6 開始,會將留言者的 IP address 和一些 spam blacklist 網站的 blacklist IP 作出對照,如發現 IP address 是在 blacklist 內,便會禁止所有 access。
因為有些 IP address 可能數年前因為發出 spam 而被 blacklisted,而一直未被刪除,大部份人上網都是經 DHCP 分派 IP address,有些人因而有機會用到這些 IP address 而被 banned。作者 Michael Hampton 亦知道有機會出現這個問題,因為那些 blacklist 並不是由他 maintain 的,所以他再次提出 Bad Behavior Blackhole project,但因為時間及經濟問題所以停止開發。
在未有 Bad Behavior Blackhole 及更新版本的時候,唯一解決方法便是自行修改 Bad Behavior 的 source code,看過 source code 後,發覺要刪除這個檢查 blacklist 的方法其實很簡單,只需修改 bad-behavior/post.inc.php,方法如下:
將第 8 行變成 comment,即是由
bb2_test($settings, $package, bb2_blackhole($package));修改成//bb2_test($settings, $package, bb2_blackhole($package));便可。
但因為我未能作出詳細的測試,我已經在這 blog 修改了,希望遇到這個問題的朋友能幫我測試,謝謝大家。
我已经按照你的方法进行了修改,看看是否还会遇到那样的问题
Let's see if this goes through..
这就是俺一直无法在你这里留言的原因。呵呵。
看來應該成功了。 :happy:
还好前几天看到本文。今天发现自己的 ip 被自己的 blog 给列入黑名单了,orz
修改的时候习惯性保存为 utf-8 编码,结果重登录报错,才发现原文件是 ANSI 编码。