Tonny Kluften
Administrator
Er det mulig for f.eks for webforumet å sperre feeden slik at utvalgte nettsteder ikke kan vise den?
<?php
$deny = array("111.111.111", "222.222.222", "333.333.333");
if (in_array ($_SERVER['REMOTE_ADDR'], $deny))
{
header("location: http://www.google.com/");
exit();
}
?>
<?php
///
// BLACKLISTS
$BadIps = array('127.0.0.1');
$BadSites = array('');
$BadCountry = array('NORWAY');
function WiewerCountry($IP) {
if(ip2long($IP)== -1 || ip2long($IP) === false) { die('Ugyldig IP'); }
$ipDetaljer = array();
$ipXML = file_get_contents("http://api.hostip.info/?ip=".$IP);
// Finn landet IP er registrert
preg_match("@<countryName>(.*?)</countryName>@si",$ipXML,$matches);
$ipDetaljer['country'] = $matches[1];
// Finn countrycode til landet IP er registrert
preg_match("@<countryAbbrev>(.*?)</countryAbbrev>@si",$ipXML,$cc_match);
$ipDetaljer['country_code']=$cc_match[1];
return $ipDetaljer;
}
$Wip = $_SERVER['REMOTE_ADDR'];
$Wcountry = WiewerCountry($Wip);
///
// IP stammer fra blacklistet land
if(in_array($Wcountry['country'], $BadCountry)) {
// ANGI HANDLING FOR LESERE FRA BLACKLISTEDE LAND
die('Flytt til et annet land!');
}
///
// IP ligger i Blacklist.
elseif(in_array($_SERVER['REMOTE_ADDR'], $BadIps)) {
// ANGI HANDLING FOR BRUKERE MED BLOKKERTE IP ADRESSER
die('Gå vekk!');
}
///
// Referer nettside ligger i Blacklist
elseif(isset($_SERVER['HTTP_REFERER'])) {
if(in_array(@$_SERVER['HTTP_REFERER'], $BadSites)) {
// ANGI HANDLING FOR BRUKERE SOM KOMMER FRA NETTSTEDER I BLACKLIST
die('Velg nettsteder du besøker med omhu');
}
}
///
// ALT ER OK
else {
echo $Wcountry['country'];
}
///
// Referer nettside ligger i Blacklist
elseif(isset($_SERVER['HTTP_REFERER'])) {
preg_match('@^(?:http://)?([^/]+)@i', $_SERVER['HTTP_REFERER'], $Treff);
$Host = $Treff[1];
preg_match('/[^.]+\.[^.]+$/', $Host, $Treff);
$Domene = $Treff[0];
if(in_array(@$Domene, $BadSites)) {
// ANGI HANDLING FOR BRUKERE SOM KOMMER FRA NETTSTEDER I BLACKLIST
die('Velg nettsteder du besøker med omhu');
}
}