Anfänger
Registriert seit: Aug 2008
Ort: villach, österreich
Beiträge: 17
Bedankt: 1
|
kann nützlich sein, werd mal zu meiner php-funktions-sammlung hinzufügen
eine kleine verbesserung hätt ich noch:
die webmaster-email ist jetzt eine variable, dann braucht man sie nicht 3 mal im code ändern
Code:
<?php
//by Bugfix for mygully.com
$block = false;
$block1 = false;
$block2 = false;
$block3 = false;
$webmaster_email = '[email protected]';
//User Agent blockieren
$useragentliste = array(
"MSIE 5.5",
"MSIE 5.23",
"MSIE 5.17",
"MSIE 5.01"
);
foreach ($useragentliste as $i) {
if (strpos ($HTTP_USER_AGENT, $i) !== false) {
$block = true;
}
}
// Web Crawler blockieren
$crawler = array(
"LinkWalker",
"TurnitinBot",
"UbiCrawler",
"Wget",
"SiteSucker",
"aipbot",
"BlackWidow",
"Bot\ mailto:[email protected]",
"Bloggsi",
"ChinaClaw",
"CHATCATCHER",
"CopyRightCheck",
"Custo",
"DISCo",
"Download\ Demon",
"eCatch",
"EirGrabber",
"EmailSiphon",
"EmailWolf",
"Express\ WebPictures",
"ExtractorPro",
"EyeNetIE",
"FlashGet",
"GetRight",
"GetWeb!",
"Go!Zilla",
"Go-Ahead-Got-It",
"GrabNet",
"Grafula",
"grub",
"HMView",
"HTTrack",
"HTTP://WWW.RELEVANTNOISE.COM",
"Image\ Stripper",
"Image\ Sucker",
"InterGET",
"Internet\ Ninja",
"Java",
"JAVA",
"JetCar",
"JOC\ Web\ Spider",
"larbin",
"looksmart",
"LeechFTP",
"LMSPIDER",
"lmspider",
"MoreOverBot",
"Mozilla$",
"Mass\ Downloader",
"MIDown\ tool",
"Mister\ PiX",
"Navroad",
"NearSite",
"NetAnts",
"NetMechanic",
"NetSpider",
"Net\ Vampire",
"NetZIP",
"Octopus",
"Offline\ Explorer",
"Offline\ Navigator",
"PageGrabber",
"Papa\ Foto",
"pavuk",
"pcBrowser",
"PYTHON-URLLIB",
"RealDownload",
"ReGet",
"SHELOB",
"SIMILARPAGES",
"SiteSnagger",
"SmartDownload",
"SphereScout",
"SuperBot",
"SuperHTTP",
"Surfbot",
"thesubot",
"tAkeOut",
"Teleport\ Pro",
"VoidEYE",
"Web\ Image\ Collector",
"Web\ Sucker",
"WebAuto",
"WebCopier",
"WebBandit",
"WebFetch",
"WebGo\ IS",
"WebLeacher",
"WebReaper",
"WebSauger",
"Website\ eXtractor",
"Website\ Quester",
"WebStripper",
"WebWhacker",
"WebZIP",
"Wget",
"Widow",
"WWWOFFLE",
"YANDEX",
"Xaldon\ WebSpider",
"Zeus"
);
foreach ($crawler as $i) {
if (strpos ($HTTP_USER_AGENT, $i) !== false) {
$block1 = true;
}
}
// IP blockieren
$ipliste = array(
"100.100.100.100",
"200.200.200."
);
foreach ($ipliste as $i) {
if (strpos ($REMOTE_ADDR, $i) !== false) {
$block3 = true;
}
}
// Referrer blockieren
$referrerliste = array(
"sexsq",
"spampoison",
"amateurxpass"
);
foreach ($referrerliste as $i) {
if (strpos ($HTTP_REFERER, $i) !== false) {
$block2 = true;
}
}
// Folgende Seiten werden geladen
// browser
if ($block == true) {
echo "<br/><br/><br/><center><b>INFORMATION</b><br/><br/>";
echo "Deine Browser Version ist veraltet bitte updaten!<br/><br/>";
echo "Derzeit benutzt du:<br/><br/>";
echo "<b>{$HTTP_USER_AGENT}</b><br/><br/>";
exit;
}
// webcrawler
if ($block1 == true) {
echo "<br/><br/><br/><center><b>WARNING / WARNUNG</b><br/><br/>";
echo "Information: WebCrawler are not allowed!<br/>";
echo "Information: WebCrawler sind hier nicht erlaubt!<br/>";
echo "<br/>";
echo $webmaster_email."<br/>";
echo "<img src=\"stopschild.gif\"><br/>";
exit;
}
// referer
if ($block2 == true) {
echo "<br/><br/><br/><center><b>WARNING / WARNUNG</b><br/><br/>";
echo "Information: Referrer is blocked!<br/>";
echo "Information: Referrer wurde blockiert!<br/>";
echo "<br/>";
echo $webmaster_email."<br/>";
echo "<img src=\"stopschild.gif\"><br/>";
exit;
}
// IPs
if ($block3 == true) {
echo "<br/><br/><br/><center><b>WARNING / WARNUNG</b><br/><br/>";
echo "Information: Your IP is {$REMOTE_ADDR} and you're not allowed to view this page!<br/>";
echo "Information: Deiner IP-Adresse {$REMOTE_ADDR} und dir ist es nicht gestattet diese Website zu sehen!<br/>";
echo "<br/>";
echo $webmaster_email."<br/>";
echo "<img src=\"stopschild.gif\"><br/>";
exit;
}
?>
vielleicht können wir ja daraus sowas wie ein community-projekt machen wenn noch wer ideen hat? die block-listen könnte man zB. aus files laden, dann wird der code übersichtlicher und man kann sich zB. listen runterladen und einfach ersetzen ohne den code zu ändern.
|