网站首页 >> 网站源码 >> 正文

PHP禁止指定IP访问或调用代码

作者:一枚小杰克   时间:2024-01-13 11:31:11   浏览:165  

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;
    }// 允许访问的代码
?>

转载代码,其代虽捡漏,但功能可用,给小伙伴们当案例参考了!


本文标签: 在意博客  IP  禁用IP  IP访问 
一枚小杰克

一枚小杰克 https://lkba.cn

博主专注于Z-BLOG网站搭建、网站优化以及电脑故障排查、重装、优化、维修系统等,QQ/WX:2126245521(请注明来意)

相关文章

上一篇:

下一篇:

本文暂无评论 - 欢迎您

请填写验证码

Processed : 0.051 SQL : 14