我正在尝试阻止来自PHP中两个IP地址的访问,最好通知他们阻止它们。
无论如何我可以做到这一点,或者只是不可能使用PHP?
我已经看过这样做的JavaScript版本,但如果浏览器关闭了JavaScript,那么他们肯定可以绕过它。
提前感谢您的任何建议/帮助。
答案 0 :(得分:2)
:
if($_SERVER['REMOTE_ADDR'] == '10.0.0.1' || $_SERVER['REMOTE_ADDR'] == '10.0.0.2')
die('Go away, banned person');
或者这个版本,当你开始有一两个禁令时变得更易于管理:
$bans = array(
'10.0.0.1' => true,
'10.0.0.2' => true,
);
if(!empty($bans[$_SERVER['REMOTE_ADDR']]))
die('Go away, banned person');
答案 1 :(得分:2)
看看这个page。它包含获取客户端IP地址的功能。您可以在任何页面上调用此选项,如果IP地址匹配,则显示错误消息。
但更简单的解决方案是使用.htaccess
将以下行添加到.htaccess
order allow,deny
deny from xx.xx.xx.xxx
deny from xxx.xxx.xxx
allow from all
其中xxx是您要阻止的IP号码。
答案 2 :(得分:1)
$ _ SERVER ['REMOTE_ADDR']应包含IP。
答案 3 :(得分:0)
要阻止的一个地方是在Web服务器上。那么只有允许的IP甚至可以进入你的网站,你不必引入任何特殊的处理代码。