X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/fcd3a42bf73242661910cb9b2f1d17b5f6ac5332..932d945b7f897fd18be7d4c2fac3eda3915aa296:/lib/init-website.php diff --git a/lib/init-website.php b/lib/init-website.php index 36928628..6db2ac37 100644 --- a/lib/init-website.php +++ b/lib/init-website.php @@ -1,22 +1,34 @@

Access blocked

"; - echo "Your IP has been blocked for overusing OpenStreetMap's volunteer-run servers.
\n"; - echo 'Please consult the Nominatim usage policy for more information.'; - echo "\n\n"; - exit; - } + if (strpos(CONST_BlockedIPs, ','.$_SERVER["REMOTE_ADDR"].',') !== false) + { + header('HTTP/1.0 403 Forbidden'); + header('Content-type: text/html; charset=utf-8'); + echo "

Access blocked

"; + echo "Your IP has been blocked for overusing OpenStreetMap's volunteer-run servers.
\n"; + echo 'Please consult the Nominatim usage policy for more information.'; + echo "\n\n"; + exit; + } - header('Content-type: text/html; charset=utf-8'); + $sTempBlockedIP = file_get_contents(CONST_IPBanFile); + if (preg_match('/\b'.$_SERVER["REMOTE_ADDR"].'\b/', $sTempBlockedIP)) + { + header('HTTP/1.0 503 Service Temporarily Unavailable'); + header('Content-type: text/html; charset=utf-8'); + echo "

Access blocked

"; + echo "Your IP has been blocked temporarily for overusing OpenStreetMap's volunteer-run servers. This ban will be lifted automatically in a while. To avoid further blocks, please read the
\n"; + echo 'Nominatim usage policy carefully before you continue to use this service.'; + echo "\n\n"; + exit; + } + + }