基于PHP的IP地址访问控制
基于PHP的IP地址访问控制,放在任何一个php文件开头都可以起作用。比如说放在wp-comments-post.php开头,黑名单中的IP就无法在博客上发表评论;如果放在评论框前面,那黑名单中的IP只能浏览博客而不能看到评论框;如果放在index.php开头,黑名单中的IP无法打开网站。
源码如下:(这个主题貌似有些问题,有些符号会自动变成全角符,且排版全乱,复制的时候注意替换一下。)
$targetip = $_SERVER['REMOTE_ADDR'];
$SIP = str_replace(", ", "",str_replace($_SERVER['REMOTE_ADDR'], "",$_SERVER["HTTP_X_FORWARDED_FOR"]));
if ($_SERVER["HTTP_X_FORWARDED_FOR"] != "" ) {
$targetip = $SIP;
}
$blacklist = array();
$file = dirname(__FILE__)."/blacklist.txt"; //黑名单文件,一个IP一行
$content = file_get_contents($file);
$blacklist = explode("\n",$content);
if (in_array($targetip, $blacklist)){
echo "您的IP已被列入黑名单,本次访问已被阻止。若为误判,请与网站管理员联系以解除访问限制。";
exit;
}
感觉这样一段代码还是很好用的,我把它放在评论框和wp-comments-post.php中了,也就是说允许Spammer查看网站,但不允许他们发表评论,看下效果:
不会代码的人只能有就用,没有就罢了。
我们有万能的百度和Google哇
我记得的cPanel的有IP拒绝的功能吧,然后,我的虚拟空间是CP的
羡慕啊,我这破空间,只有一个FTP,后台还得自己上传一个
額,Plesk面板的免費空間都有,cPanel已經爛大街啦
经过查阅,发现wordpress后台自带已有此功能。
这个真有?
阻止垃圾评论?
看我下面那条评论。
后面还一篇没发,结合着用
那赶紧上吧,观众等不及了。
定期,慢慢来
并且比这个更完善~ :evil:
是的。不单单局限于IP。
Discuz貌似后台直接有设置项。wordpress后台讨论那里能实现不?
这个功能不错
哈哈