moder
Администратор
Команда форума
Поскольку сейчас нет таких уже проектов или последние обновления были давно, запускаем свой реестр.
Реестр работает по адресу: reestr.roszapret.ru
В реестре за раз отображается только 400 доменов, пагинации нет, поэтому пользуйтесь фильтром.
В реестре не все заблокированные сайты (свыше 1 млн.), а только часть: отфильтрованы многие зеркала казино, киносайтов, технических сайтов (например, содержащих нижнее подчеркивание) и т.д.
Кроме того, полностью отфильтрованные следующие доменные зоны: air, quest, lol, tech, art, monster, homes, world, digital, casino, win, lux, lat, pics, sbs, bond, fr, cloud, cyou, life, cfd, space, live, top, su, buzz, pw, host , fun, bid, icu, vip, xn--p1ai, rs, games, casa, rest, how, one, xxx, bio, club, run, fit, bet, study, website, to, cz, at, tattoo, red, ws, gg, ink, рф, cam.
Также отфильтрованы домены, содержащие кириллицу. Таких доменов не очень много, но без них можно поставить кодировку latin1, а она значительно уменьшает размер базы и работа со списком осуществляется быстрее.
Ссылка на репозиторий: https://github.com/Roscenzura-com/rkn/tree/master
Если вы хотите сделать аналогичный список, регистрируйтесь на форуме и пишите запрос в ЛС.
PHP-функции для фильтрации:
Реестр работает по адресу: reestr.roszapret.ru
В реестре за раз отображается только 400 доменов, пагинации нет, поэтому пользуйтесь фильтром.
В реестре не все заблокированные сайты (свыше 1 млн.), а только часть: отфильтрованы многие зеркала казино, киносайтов, технических сайтов (например, содержащих нижнее подчеркивание) и т.д.
Кроме того, полностью отфильтрованные следующие доменные зоны: air, quest, lol, tech, art, monster, homes, world, digital, casino, win, lux, lat, pics, sbs, bond, fr, cloud, cyou, life, cfd, space, live, top, su, buzz, pw, host , fun, bid, icu, vip, xn--p1ai, rs, games, casa, rest, how, one, xxx, bio, club, run, fit, bet, study, website, to, cz, at, tattoo, red, ws, gg, ink, рф, cam.
Также отфильтрованы домены, содержащие кириллицу. Таких доменов не очень много, но без них можно поставить кодировку latin1, а она значительно уменьшает размер базы и работа со списком осуществляется быстрее.
Ссылка на репозиторий: https://github.com/Roscenzura-com/rkn/tree/master
Если вы хотите сделать аналогичный список, регистрируйтесь на форуме и пишите запрос в ЛС.
PHP-функции для фильтрации:
Код:
function multi_strpos($str, $find=[], $operator='or')
{
foreach ($find as $s)
{
if (strpos($str, $s)!==false)
{
if ($operator=='or') return true;
}
elseif ($operator=='and') return false;
}
if ($operator=='or') return false; else return true;
}
function multi_substr($str, $find=[])
{
foreach ($find as $s)
{
if ($str==$s) return false;
if (substr($str, 0, strlen($s) ) == $s)
{
return true;
}
}
return false;
}
function isLikelyCasino($domain)
{
if ( multi_substr($domain, ['azino', 'casino', 'kazino', 'maksbet', 'sloty', 'igrovie', 'joycasino']) ) return true;
}
function isMirrorCasino($domain)
{
if ( multi_substr($domain, ['winlinebk', 'winline', '1xred', '24vulkan','888a', 'baltplay', 'casino-x', 'fonbet', 'joycasino', 'ligastavok', 'melbet-', 'winlinebet', 'vulkan-', 'vulcan-', 'wylkan', 'upcasino', 'swleon', 'paripartner', 'parimatch', 'casinos', 'solcasino' ,'roxcasino', 'xcasino', 'zzslot', 'vavada', 'mostbet', '7k-casino', '1xbet', '1x-bet', '7kcasino', '777v','777-']) ) return true;
if (multi_strpos($domain, ['vulcan-', 'casino-', '-casino', '-cazino', '1xbet', 'joycasino', 'pokerdom'])) return true;
if ( substr($domain, 0,4)=='leon' ) return true;
}
function isLikelyMirror($domain)
{
if (multi_strpos($domain, ['lordfilm', '-zerkalo', '_', '--', '-vulkan-', 'lord-film', 'livetv', 'cloudfront.net', 'azureedge.net', 'hdrezka'])!==false) return true;
if (strpos($domain, '?')!==false) return true;
$a=explode('.', $domain);
$domainPartsCount=count($a);
if ($domainPartsCount>3) return true;
$part1=current($a);
if (substr($part1, 0, 4)=='1win') return true;
if (strpos($domain,'sex')!==false)
{
if (is_numeric(substr($part1,0,1))) return true;
if (is_numeric(substr($part1,-1))) return true;
if ($part1=='sex') return true;
}
if ($domainPartsCount==3)
{
$sub=$part1;
if (multi_strpos($domain, ['kasino', 'casino', 'kinogo', 'film', 'serial', 'proxy', 'appspot.com'])!==false) return true;
//if (multi_strpos($sub, ['-'])) return true;
if (is_numeric(substr($a[1],0,1))) return true; // sdf.1wer.ru
if (is_numeric(substr($a[1],-2))) return true; // wer.wer1.com
if (is_numeric(substr($sub,1))) return true; // w123.domain.com
if (is_numeric(substr($sub,-2))) return true; // mirror23.domain.com
if (mb_strlen($sub)>32) return true;
if (mb_strlen($sub)<2) return true;
if (is_numeric(substr($part1,0,4))) return true;
if (is_numeric(substr($part1,0,3))) return true;
if (is_numeric(substr($part1,0,2))) return true;
$f4=substr($part1, 0, 4);
if ($f4=='xn--') return true;
$f5=substr($sub, 0, 5);
if (in_array($f5, ['prost'])) return true;
}
else
{
if (substr($part1, 0, 2)=='1w') return true;
if (substr($part1, 0, 2)=='1x') return true;
if (substr($part1, 0, 2)=='01') return true;
// if (substr($part1, 0, 3)=='1ux') return true;
if (substr($part1, 0, 5)=='vodka') return true;
if (strlen($part1)>41) return true;
if (multi_strpos($domain, ['kasino', 'admira', 'casino', 'kazino', 'diplom', 'prava', 'film', 'serial', 'fresh', 'kinogo'])!==false)
{
if (is_numeric(substr($part1,0,1)) || is_numeric(substr($part1,-1))) return true;
}
$f4=substr($part1, 0, 4);
if (in_array($f4, ['vvul', 'wull', 'www-', 'vull', 'alco', '1xbe', 'xbet', 'zeon', 'xn--', '1kra', '1dip', '1cas', '1bet'])) return true;
// slon
$f6=substr($part1, 0, 6);
if (in_array($f6, ['zerkal', 'maxbet', 'kinogo', 'diplom', 'kraken', 'vulkan', 'vulcan', 'wulcan', 'wulkan', 'vylkan', 'volnac', 'volna-', 'volnak'])) return true;
if (substr($part1, 0, 5)=='zooma') return true;
if (substr($part1, 0, 5)=='zenit') return true;
if (is_numeric($part1) && strlen($part1)<5) return true;
if (is_numeric(substr($part1,0,4))) return true;
if (is_numeric(substr($part1,-4))) return true;
if (is_numeric(substr($part1,0,3))) return true;
}
$parts=explode('-', $part1);
$count=count($parts);
if ($count>1)
{
if (is_numeric($parts[0])) return true;
if (is_numeric(end($parts))) return true;
}
if ($count>3) return true;
$z=end($a);
if (in_array($z, ['ru', 'com', 'org', 'biz', 'ai', 'net', 'shop', 'info'])) return false;
if (in_array($z, ['air', 'quest', 'lol', 'tech', 'art', 'monster', 'homes', 'world', 'digital', 'casino', 'win', 'lux', 'lat', 'pics', 'sbs', 'bond', 'fr', 'cloud', 'cyou', 'life', 'cfd', 'space', 'live', 'top', 'su', 'buzz', 'pw' , 'host' , 'fun', 'bid', 'icu', 'vip' , 'xn--p1ai', 'rs', 'games', 'casa', 'rest', 'how', 'one', 'xxx', 'bio', 'club', 'run', 'fit', 'bet', 'study', 'website', 'to', 'cz', 'at', 'tattoo', 'red', 'ws', 'gg', 'ink', 'рф', 'cam'])) return true;
if (is_numeric(substr($part1,-1))) return true; // mirror3.domain.xyz, domain3.xyz
if (is_numeric(substr($part1,0,2))) return true; // 33mirror.domain.xyz, 32domain.xyz
if (multi_strpos($domain, ['smotr', 'online', 'sezon', 'mp3', 'serial', 'rutor', 'russkie', 'prostitutk', '-hd-', 'casin', 'films', 'prava', 'diplom'])!==false) return true;
$f4=substr($part1, 0, 4);
if (in_array($f4, ['lord', 'alco'])) return true;
return false;
}
// проверка на кириллицу
function hasCyrillic($string) {
return preg_match('/[А-Яа-яЁё]/u', $string);
}
Последнее редактирование: