您的位置:首页 > 编程语言 > PHP开发

使用PHP或.htaccess限制IP访问

2009-03-07 08:54 232 查看
很多网站实战过程中都经历过这样的事情:有些人使用各种IP来进行spam或者利用程序来进行网站内容抓取。这样的不道德行为为我们网站带来了很大的负担。另外,由于一些搜索引擎爬虫不遵守固定协议,对网站大量的抓取和重复爬行,给网站服务器造成重大压力。这些情况都需要我们及时处理,否则给网站带来的伤害是很大的。通过使用PHP或.htaccess对固定IP进行限制访问在做网站优化以及网站基础部署中都是有用的,可以有效防止采集和Spam来源。

如果你能获取捣乱来源的IP,那么可以利用网站程序自带的IP禁止将其IP ban掉,或者如果你的服务器支持PHp,那么可以使用以下代码实现对固定IP的限制访问。

复制内容到剪贴板
代码:
<?php
if($_SERVER['REMOTE_ADDR'] == "192.168.1.123"){
exit();
}
?>


这个代码有个缺陷,就是每次都需要在网页上添加IP,对于要限制的IP地址比较多的时候,就比较繁琐。那么可以使用以下代码减轻你的网站负担。

复制内容到剪贴板
代码:
<?php
$banned = file("ban_ip_list.dat");
if(in_array($_SERVER['REMOTE_ADDR'], $banned)){
echo "你的IP属于被禁止访问列表。如果问题请与站长联系。";
exit();
}
?>


这样只需要在ban_ip_list.dat里面每行添加一个IP就可以实现IP禁止了。
如果网站不支持PHP或者需要禁止的IP特别多,那么我们可以利用.htaccess来实现限制效果。

复制内容到剪贴板
代码:
Order Deny,Allow
Deny from xxx.xxx.xxx.xxx
Deny from xxx.xxx.xxx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: