У Вас есть один вопрос? - Тогда задайте его тут! new!

Тема закрыта
83.62K
.
The Frontend-Warrior
# ~РайСкиЙ~ (19.12.2015 / 22:43)
В моем корневом htaccess в самом конце есть такая вот запись:
<Files 403.shtml>
order allow,deny
allow from all
</Files>
вроде раньше ее не было. Что она означает?
разрешает доступ к файлу 403.shtml в текущем каталоге
.
Разобрался. Это кусок остался после использования диспетчера блокировки ИП в сПанели. Вопрос такой возник. Может кто знает код, который можно использовать на джоне, для защиты сайта от частого обновления страниц?
.
(\/)____o_O____(\/)
~РайСкиЙ~, стандартный антифлуд в настройках
.
Koenig, Он работает только на написание сообщений. На обновление страниц (ctrl+F5) он вообще не реагирует. Это не вариант
.
(\/)____o_O____(\/)
~РайСкиЙ~, из под юзера проверь, у админа иммунитет
.
Koenig, Проверял. Обновляй хоть целый день. Тут кстати на джоне тоже самое. Написать часто нельзя. А обновлять можно бесконечно. Я вот про что. Зайди например в контакт. И начни обновлять страницы. Тебе выскочит предупреждение. Я хочу сделать подобное. Невозможность часто обновлять страницу.Просто нужно это сделать либо убирать некоторые модули с сайта.
.
~РайСкиЙ~
Такая подобная штука я понял есть в incfiles/classes/core.php

/*
    -----------------------------------------------------------------
    Проверка адреса IP на флуд
    -----------------------------------------------------------------
    */
    private function ip_flood()
    {
        if ($this->flood_chk) {
            //if ($this->ip_whitelist(self::$ip))
            //    return true;
            $file = ROOTPATH . 'files/cache/ip_flood.dat';
            $tmp = array();
            $requests = 1;
            if (!file_exists($file)) $in = fopen($file, "w+");
            else $in = fopen($file, "r+");
            flock($in, LOCK_EX) or die("Cannot flock ANTIFLOOD file.");
            $now = time();
            while ($block = fread($in, 8)) {
                $arr = unpack("Lip/Ltime", $block);
                if (($now - $arr['time']) > $this->flood_interval) continue;
                if ($arr['ip'] == self::$ip) $requests++;
                $tmp[] = $arr;
                self::$ip_count[] = $arr['ip'];
            }
            fseek($in, 0);
            ftruncate($in, 0);
            for ($i = 0; $i < count($tmp); $i++) fwrite($in, pack('LL', $tmp[$i]['ip'], $tmp[$i]['time']));
            fwrite($in, pack('LL', self::$ip, $now));
            fclose($in);
            if ($requests > $this->flood_limit){
                die('FLOOD: exceeded limit of allowed requests');
            }
        }
    }


Только что то она не работает. Точнее она не работает на защиту от частого обновления страницы
.
(\/)____o_O____(\/)
~РайСкиЙ~, может кэш арбузера работает, потому и пропускает
х3 если честно
.
Koenig, Может каким то другим способом это реализовать?
.
(\/)____o_O____(\/)
~РайСкиЙ~, ты бы подробнее написал для чего это все. можно попробовать через сессию проверку сделать, записывать время с микросекундами и проверять с текущим, и например делать редирект на какую нибудь страницу
Всего: 6714