欢迎访问服务器技术网-www.fuwuqijishu.com

WordPress屏蔽某个地区或者IP段的用户无法访问网站

网站建设 fuwuqijishu 2年前 (2022-09-04) 78次浏览 0个评论 扫描二维码

有些时候特殊的需要,我们希望网站不被某个地区或者某个IP段的用户访问。我们可以在服务器上进行设置,但是这样稍微有些麻烦。最好的办法,也是最有效的办法我们可以直接通过PHP页面进行判断用户地区,然后进行屏蔽访问的办法。

第一、创建页面

header(“Content-type: text/html; charset=utf-8”);
$verification = ‘江苏省’;//需要屏蔽省份的IP
$ip = $_SERVER[‘REMOTE_ADDR’];//获取访客IP
$antecedents = $_SERVER[‘HTTP_REFERER’];//访客来路地址
$result = file_get_contents(“http://ip.taobao.com/service/getIpInfo.php?ip=”.$ip);
$address = json_decode($result,true);
//判断访客是否属于江苏省,是否来自百度,是否来自谷歌
if($address[‘data’][‘region’] == $verification && strpos($antecedents, ‘baidu’) === false && strpos($antecedents, ‘google’) === false){
sleep(86400);//设置一个999999秒。看他们有没有这么好耐心。
Header(“HTTP/1.1 204 No Content”);
exit;
}

将代码保存成ip.php页面,在省份处修改需要屏蔽的省份和地区。

第二、调用页面

<?php require(‘ip.php’);?>

在WordPress首页或者头部全局模板中调用页面。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2121.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900