ФорумСообществоФлейм → Список ip для стран без geoip реально?

Список ip для стран без geoip реально?

  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 14:22

    Имеется вот такой вот аккордеон


    мне необходимо рядом с каждым ip проставить флажок страны, причем сделать это лучше при помощи js, geoip на сервере нету, жду ваших советов.

    и еще надо как нибудь отделить ip ботов от ip людей, полюбому есть какая то база ip ботов?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2011 г. 14:28, спустя 5 минут 51 секунду

    гугель
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 14:30, спустя 2 минуты 30 секунд

    нашел там на mysql базу, ебаный же в рот сервер отвалится если я допустим сто айпишников скормлю разом mysql?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2011 г. 14:34, спустя 3 минуты 35 секунд

    типа у тебя 100 уникальный ипов в секунду?
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 14:43, спустя 8 минут 42 секунды


    типа у тебя 100 уникальный ипов в секунду?


    типа допустим кеш тут будет бессмысленен, парсятся логи апача через директадмин (порно)
    if (! isset($access[md5($this->session->userdata('openid_username'))])) {
    show_error('Fuck off!');
    }

    $data = array();
    $data['theme'] = $this->session->userdata('theme');

    $local = curl_init();
    curl_setopt($local, CURLOPT_URL, 'http://127.0.0.1/CMD_SHOW_LOG?domain=непомню&type=log');
    curl_setopt($local, CURLOPT_HEADER, 0);
    curl_setopt($local, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($local, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    curl_setopt($local, CURLOPT_PORT, 2222);
    curl_setopt($local, CURLOPT_PROTOCOLS, CURLPROTO_HTTP);
    curl_setopt($local, CURLOPT_INTERFACE, 'venet0');
    curl_setopt($local, CURLOPT_KRB4LEVEL, 'clear');
    curl_setopt($local, CURLOPT_USERPWD, 'ХУЙ');
    curl_setopt($local, CURLOPT_USERAGENT, 'Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.7.62 Version/11.01');
    $handle = curl_exec($local);

    if (curl_errno($local)) {
    show_error(curl_error($local));
    } else {
    curl_close($local);
    }

    $d1 = strtotime("now");
    $d2 = strtotime("-1 days");
    $d3 = strtotime("-2 days");

    $x1 = str_replace('/', '\\/', date("d/M/Y", $d1)).':\d+:\d+:\d+\s'.preg_quote(date("O", $d1));
    $x2 = str_replace('/', '\\/', date("d/M/Y", $d2)).':\d+:\d+:\d+\s'.preg_quote(date("O", $d2));
    $x3 = str_replace('/', '\\/', date("d/M/Y", $d3)).':\d+:\d+:\d+\s'.preg_quote(date("O", $d3));

    preg_match_all('/(\d+\.\d+\.\d+\.\d+).+?(\['.$x1.'\]|\['.$x2.'\]|\['.$x3.'\]).+?\"(.+?)\n/', $handle, $f);
    unset($handle, $f[0]);

    for ($log = array(), $c = count($f[1]), $i = 0; $i < $c; $i++) {
    if (isset($log[$f[1][$i]])) {
    $log[$f[1][$i]][] = array($f[2][$i], $f[3][$i]);
    } else {
    $log[$f[1][$i]] = array(array($f[2][$i], $f[3][$i]));
    }
    }

    unset($f);

    $data['log'] = $log;
    $this->load->view('admin_page', $data);


    <div id="log">
    <?php
    $a = "";

    foreach (array_keys($log) as $ip)
    {
    $a .= '<h3><a href="#">'.$ip.'</a></h3><div><p><ul>';
    foreach ($log[$ip] as $logdata)
    {
    $a .= '<li class="ui-state-highlight">'.$logdata[0].' '.htmlspecialchars($logdata[1]).'</li>';
    }
    $a .= '</ul></p></div>';
    }

    echo $a;
    ?>
    </div>
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2011 г. 14:50, спустя 6 минут 52 секунды

    ну типа заведи отдельную таблицу с ипами, туда будут записываться уже идентифицированные ИПы, идентифицируешь при парсинге из логов и записываешь в бд, и периодически удаляешь старье

    идентифицируешь раз в 5 минут с задержками, чтобы базу не убить (типа сервиса)

    предупреждение: говорит теоретик
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 14:56, спустя 6 минут 17 секунд


    ну типа заведи отдельную таблицу с ипами, туда будут записываться уже идентифицированные ИПы, идентифицируешь при парсинге из логов и записываешь в бд, и периодически удаляешь старье

    идентифицируешь раз в 5 минут с задержками, чтобы базу не убить (типа сервиса)

    предупреждение: говорит теоретик


    кроном чтоли?
    Спустя 58 сек.
    ты мне предлагаешь закешировать в базу ипы чтобы один хуй их потом из базы вытаскивать?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2011 г. 15:02, спустя 6 минут 18 секунд

    удалять старье кроном, да

    а вот сервис парсинга хз на чем
    Спустя 266 сек.
    ну да, или в той базена каждый ип отдельная запись?
    Спустя 27 сек.
    хотя не, это вряд ли)
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 15:11, спустя 8 минут 31 секунду

    Идея была изначально в возможном существовании какого нибудь XML файла со всеми ипами стран (что-то вроде яндексовской xml поеботины)
    И допустим делать вывод так:
    $a .= '<h3><a href="#">'.$ip.'</a></h3><div><p><ul>';


    А потом какой нибудь хуйней делать так:
    $( "h3 :a" ).each(function () {
    var z = $( this ).html();
    $( this ).html(z+"&nbsp;"+get_country_flag_by_ip(z));
    });
    Спустя 76 сек.
    а функция get_country_flag_by_ip парсила бы xml из доставала из него регулярку
    Спустя 271 сек.
    или json, не обязательно xml
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 21 февраля 2011 г. 15:22, спустя 10 минут 59 секунд

    а если передать mysql ип адреса то как этот запрос гграмотнее сделать?
    Спустя 73 сек.
    пятисотое сообщение на пыхе, кусок жизни потрачен впустую
  • master

    Сообщения: 3236 Репутация: N Группа: Джедаи

    Spritz 21 февраля 2011 г. 18:58, спустя 3 часа 36 минут 9 секунд

    сервер отвалится если я допустим сто айпишников скормлю разом mysql?

    нет конечно
    Спустя 70 сек.
    ессно поле должно быть индексировано и запрос должен быть один а не 100
    не всё полезно, что в swap полезло
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 21 февраля 2011 г. 22:35, спустя 3 часа 36 минут 54 секунды

    кусок жизни потрачен впустую

    оставшийся перед 500 сообщениями
    Спустя 32 сек.
    на мускуле не очень быстрая выборка по ипам получается. 0.01-0.1 примерно в зависимости от сервера
    Сапожник без сапог
  • Troy

    Сообщения: 2532 Репутация: N Группа: Джедаи

    Spritz 22 февраля 2011 г. 5:37, спустя 7 часов 2 минуты 6 секунд

    Попробуй геоip от дуда, шустро работает, только базу сразу обнови
  • ivanscm

    Сообщения: 1251 Репутация: N Группа: Джедаи

    Spritz 22 февраля 2011 г. 5:47, спустя 9 минут 50 секунд

    есть фри сервис такой, непомню как завется. он и базу дает и запросы к нему мона делать
    Спустя 15 сек.
    буду дома нарою
    Спустя 287 сек.
    http://www.wipmania.com/ru/ вот он. токо ща помоему платный стал :)
    С возвращением, Пiха!
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz 22 февраля 2011 г. 7:02, спустя 1 час 15 минут 14 секунд

    а если я твоей випмании отправлю разом 100-200 айпишников он меня не пошлет на фри тарифе?

Пожалуйста, авторизуйтесь, чтобы написать комментарий!