您现在的位置: 365建站网 > 365学习 > 网站备案不关闭网站实用方法:屏蔽管局地区IP使其无法访问本站

网站备案不关闭网站实用方法:屏蔽管局地区IP使其无法访问本站

文章来源:365jz.com     点击数:427    更新时间:2018-03-17 18:16   参与评论
    大家都知道备案是网站是一件很痛苦的事情,因为要关站这对已经上线的网站被搜索引擎惩罚是非常严重的,那么博主今天教大家一种方法在wordpress下备案关站对搜索引擎和用户体验访问更友好的方法(代码来自阿里论坛):屏蔽备案地区IP
1.先复制这段代码建立个PHP文件,命名为:shielded.php 要屏蔽什么地区改XX位置

/**
*
* test.php(屏蔽地方IP)
*
* @package .....
* @author ....
* @copyright Copyright (c) 2008-2013 (http://www.yidianblog.com)
* @license .....
* @version ICP 4444$
*/ 
header("Content-type: text/HTML; charset=utf-8"); 
$verification='XX省';//需要屏蔽省份的IP 
$ip=$_SERVER['REMOTE_ADDR'];//获取访客IP 
$antecedents=$_SERVER['HTTP_REFERER'];//访客来路地址 
$result=file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);//IP数据库来自淘宝。 
$address=json_decode($result,true); 
//判断访客是否属于XX省,是否来自百度,是否来自谷歌 
if($address['data']['region']==$verification&&strpos($antecedents,'baidu')===false&&strpos($antecedents,'google')===false)($antecedents,'360'){ 
sleep(86400);//设置一个999999秒。看他们有没有这么好耐心。 
Header("HTTP/1.1 204 No Content"); 
exit; 
}

2.把shielded.php上传到网站根目录
3.在wp-config.php下添加一句

require_once(ABSPATH.'shielded.php'); 


4.最后你会发现已经成功屏蔽你需要的省份,如果备案完成后大家删除wp-config.php下的这句代码即可
总结:这种方法是对一个省份进行的屏蔽,比如你是浙江备案的,那么屏蔽浙江;当然,这样的屏蔽会导致整个浙江省访客无法进行访问,IP数据调用的是淘宝的IP库,准确度一般较大,对搜索引擎爬虫进行不屏蔽,当然你还想加入搜狗、360等一些爬虫可以自行写上;还有一点,如果管局的人上梯子的话那么还是会访问到我们,备案关站方法有很多种,主页503、全站503、DNS做访客和搜索引擎的切换等等.....博主自己觉得这种方法最实用。

另外方法资料整理:
备案不关站方法:PHP代码屏蔽地区管局访问IP,不影响百度蜘蛛

 <?php
function get_client_ip() {
    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) $ip = getenv("HTTP_CLIENT_IP");
    else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown")) $ip = getenv("HTTP_X_FORWARDED_FOR");
    else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) $ip = getenv("REMOTE_ADDR");
    else if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) $ip = $_SERVER['REMOTE_ADDR'];
    else $ip = "unknown";
    return ($ip);
}
header("Content-type: text/html; charset=utf-8");
$verification = '山东省';//修改省份
$ip = get_client_ip(); //获取当前用户的ip
$antecedents = $_SERVER['HTTP_REFERER'];//访客来路地址
$result = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);//IP数据库来自淘宝。
$address = json_decode($result,true);
if($address['data']['region'] == $verification && strpos($antecedents, 'baidu') === false && strpos($antecedents, 'google') === false){
    sleep(9);
    ob_start();
    header('HTTP/1.503 Service Temporarily Unavailable');
    header('Status: 503 Service Temporarily Unavailable');
    header('Retry-After: 3600');
    echo '网站备案中....';
    exit;
}
?>


使用方法:

一、新建一个php文件,如:beian.php

二、再将以上代码,进去,修改一下自己所在的地区。这个地区就无法访问了。

三、保存并上传到网站根目录。

四、嵌入程序:

(1)wordpress程序,在wp-config.php下添加一句 require_once(ABSPATH.'shielded.php');  保存。

(2)PHP程序,打开网站根目录index.php文件,<?php include 'beian.php';?> 将这段代码添加到顶部,保存。

(3).net程序 打开网站根目录index.aspx文件,<!-- #include file="beian.php" --> 将这段代码添加到顶部,保存。

(4)asp程序 打开网站根目录index.asp文件,<!--#include file="beian.php"--> 将这段代码添加到顶部,保存。

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (427人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------