對于已經(jīng)運營了一段時間的網(wǎng)站來說,突然北岸要關(guān)閉網(wǎng)站,會令大多數(shù)人都很煩惱~
前一段時間,小編的網(wǎng)站正逢此事,wordpress要做到北岸不關(guān)站,好友奶嘴告訴了我這樣一個辦法——屏蔽管局地區(qū)IP。
親測可用,但不完全肯定不會有任何紕漏,在這里記錄一下。
萬不得已之下,你可以嘗試使用以下辦法。
新建一個ipget.php文件,把下面的代碼輸入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(); //獲取當(dāng)前用戶的ip
$antecedents = $_SERVER['HTTP_REFERER'];//訪客來路地址
$result = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);//IP數(shù)據(jù)庫來自淘寶。
$address = json_decode($result,true);
if($address['data']['region'] == $verification && strpos($antecedents, 'baidu') === false && strpos($antecedents, 'google') === false){
sleep(9999999999999999);
ob_start();
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
header('Retry-After: 3600');
header('X-Powered-By:NaiZui');
echo '網(wǎng)站備案中....';
exit;
}
在wordpress主題header.php中調(diào)用
<?php include( 'ipget.php' );?>