PHP禁止指定IP访问或调用代码,来自在意博客,把要拉黑的IP保存到ip.txt一行一个,被拉黑的IP无法访问或调用,或做跳转或拒绝访问都可以自行扩展
需要注意:请手动创建一个ip.txt,否则报错。
<?php// 获取访客IP
$visitor_ip = $_SERVER['REMOTE_ADDR'];
$blacklist_file = 'ip.txt';
$blacklisted_ips = file($blacklist_file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);// 检查IP是否在ip.txt黑名单中
if (in_array($visitor_ip, $blacklisted_ips)) {
// IP 在黑名单中,拒绝访问
header('HTTP/1.1 403 Forbidden');
echo 'Access Denied';
exit;
}// 如果不在黑名单 正常的代码。
?>如果你使用了CDN那么用上面的代码可能获取到的是节点IP,你可以使用以下代码解决。
<?php// 针对你使用了CDN,来获取用户IP
$visitor_ip = $_SERVER['HTTP_CF_CONNECTING_IP'] ?? $_SERVER['HTTP_X_FORWARDED_FOR'] ?? $_SERVER['REMOTE_ADDR'];
$blacklist_file = 'ip.txt';
$blacklisted_ips = file($blacklist_file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
if (in_array($visitor_ip, $blacklisted_ips)) {
// IP 在黑名单中,拒绝访问
header('HTTP/1.1 403 Forbidden');
echo 'Access Denied';
exit;
}// 允许访问的代码
?>转载代码,其代虽捡漏,但功能可用,给小伙伴们当案例参考了!
博主专注于Z-BLOG网站搭建、网站优化以及电脑故障排查、重装、优化、维修系统等,QQ群:1042168487
Copyright © 2020-2025 Jack作品 Reserved.
Powered By Z-Blog Sitemap | 蜀ICP备2023025269号-1 | 神秘虫洞传送
Processed : 0.051 SQL : 14
本文暂无评论 - 欢迎您