Создать ответ 
Немного измененный скрипт автобана
Автор Сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #91
RE: Немного измененный скрипт автобана
Странно Scratch, тут ведь должен сработать обычный MySQL запрос на удаление:
PHP код:
<?php
$db
=mysqli_connect("localhost","acad","pswd","ban_id");

$res=mysqli_query($db,"DELETE FROM black_list_ip WHERE date<".(time()-900)."");
$res=mysqli_query($db,"DELETE FROM all_visits WHERE date<".(time()-900).""); 

А все остальные строчки файла cron.php отвечают за формирование файла .htaccess.
А что пишет, если обратиться к файлу cron.php напрямую через браузер? Может к БД пытаетесь не правильно подключиться?
14.12.2014 17:48:26
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #92
RE: Немного измененный скрипт автобана
Еще 1 момент, при обращении к cron.php:
когда доступ к сайту имеется, то выдается пустая страница, но после того как доступ закрыт к сайту, то если в адресную строку ввести .../php/cron.php, то доступ к сайту остается закрытым все равно.
Если принудительно удаляю строки из htaccess, то работает все нормально. Получается, что сброс не работает или я неправильно подключаю, хотя вроде все правильно. 1 скрипт и аналог крона находятся на 1 странице, а cron.php в папке php и в крипте аналога крона путь прописан.

Ссылки на сайт удалил.
14.12.2014 18:00:21
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #93
RE: Немного измененный скрипт автобана
Как бы это объяснить...
Забаненный IP сам с себя не сможет снять блокировку даже по прошествии указанного времени, нужно чтобы кто-то с другим IP посетил сайт, сработает аналог CRON-а и блокировка снимется.
14.12.2014 18:13:10
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #94
RE: Немного измененный скрипт автобана
(14.12.2014 18:13:10)Admin писал(а):  Как бы это объяснить...
Забаненный IP сам с себя не сможет снять блокировку даже по прошествии указанного времени, нужно чтобы кто-то с другим IP посетил сайт, сработает аналог CRON-а и блокировка снимется.

Из вашего сообщения предыдущего сообщения Ж
.htaccess еще удалите свой IP перед обращением к cron.php.
если я так делаю, то я могу обращаться через браузер к cron.php (выдается пустая строка), но если и не обращаюсь, то сайт у меня сразу работает, сразу после удаления строк из htaccess:
Order Allow,Deny
Allow from all
deny from 127.0.0.1
при этом в таблице black_list_ip я не изменяю ip.
Как только я удаляю строчки из htaccess не меняя забаненный ip и пробую нажать на ссылку:
[Изображение: tid120_6.png]
то все работает...
14.12.2014 18:25:29
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #95
RE: Немного измененный скрипт автобана
Все верно. Т.к. обычный пользователь не имеет доступа к файлу .htaccess и БД и не может сам себя оттуда удалить, да и вообще доступ к сайту для него закрыт.

Если удалить IP адрес из файла .htaccess - то доступ к сайту откроется сразу.
Файл cron.php снимает блокировку через 15 минут (переписывает файл .htaccess без забаненного на 15 минут IP) при условии, что кто-то с незабаненным IP адресом посетит сайт.

Похоже, мы говорим об одном и том же, но немного разными словами.
14.12.2014 20:12:15
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #96
RE: Немного измененный скрипт автобана
(14.12.2014 20:12:15)Admin писал(а):  Все верно. Т.к. обычный пользователь не имеет доступа к файлу .htaccess и БД и не может сам себя оттуда удалить, да и вообще доступ к сайту для него закрыт.

Если удалить IP адрес из файла .htaccess - то доступ к сайту откроется сразу.
Файл cron.php снимает блокировку через 15 минут (переписывает файл .htaccess без забаненного на 15 минут IP) при условии, что кто-то с незабаненным IP адресом посетит сайт.

Похоже, мы говорим об одном и том же, но немного разными словами.

Работает, просто хотел на локальном сервере себя забанить (что успешно) и посмотреть как работает таблица сброса.
Еще вопрос. Так как у меня используются относительные адреса, тег <base> прописан везде в страницах расположенных в корне, так и в папках.
Так вот у меня при переходе страниц, которые располагаются в корне имеется 1 файл htaccess, а в папках (у меня их 3) создается дополнительный файл htaccess и cron_time соответственно. Это правильно?
В этом htaccess файле только строчки:
Order Allow,Deny
Allow from all
если все нормально и добавляется ip, когда доступ закрывается.
В основном файле htaccess имеется и другая информация, которая как я понимаю не связана с htaccess расположенного в папке.
Все страницы не могут ссылаться на основной htaccess или в папке должен быть еще один, в данном случае, для сброса.
Ведь у меня информация в htaccess расположенного в корне распространяется на все страницы, например удаление из адресной строки www и т.д., а при сбросе необходим получается 1 дополнительный htaccess для файлов расположенных, только в папках.
Догадки есть, но точного ответа нет, почему так происходит.

P.S. : В сообщении #82 есть изображение с адресом будущего сайта, вы можете удалить, если посчитаете нужным.
заранее благодарен.
15.12.2014 15:17:18
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #97
RE: Немного измененный скрипт автобана
Файлы .htaccess и cron_time должны быть в единственном экземпляре в корневой папке сайта.

Т.к. у самого есть подпапки (форум), то основной код скрипта автобана подключаю через <?php include "../name_file.php";?>
Т.е. файл name_file.php лежит к корне сайта и перезаписывает .htaccess также в корне сайта.
15.12.2014 20:36:14
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #98
RE: Немного измененный скрипт автобана
(15.12.2014 20:36:14)Admin писал(а):  Файлы .htaccess и cron_time должны быть в единственном экземпляре в корневой папке сайта.

Т.к. у самого есть подпапки (форум), то основной код скрипта автобана подключаю через
Т.е. файл name_file.php лежит к корне сайта и перезаписывает .htaccess также в корне сайта.

Доброе время суток,
Пробовал делать и так, как у вас:
<?php include "../name_file.php";?>, но все равно не выходит, создается при переходе на любую страницу, расположенную в папке сначала cron_time, а когда доступ закрывается и htaccess.
Для корневых страниц:
<?php include ("ban.php"); ?>
для страниц в папках:
<?php include ("../ban.php"); ?>

где в ban.php добавляется код аналога крона:
<?php
$cron_time=filemtime("cron_time");
if (time()-$cron_time>=600) {
file_put_contents("cron_time","");
include "ban/cron.php";
}
?>

Работает все, но непонятно почему создается в каждой папке cron_time и htaccess.
В корневых страницах тег <base>:
<base href="http://mysite.ru" />
и в страницах расположенных в папках:
<base href="http://mysite.ru/read/" />

(16.12.2014 18:10:05)ale10ey писал(а):  
(15.12.2014 20:36:14)Admin писал(а):  Файлы .htaccess и cron_time должны быть в единственном экземпляре в корневой папке сайта.

Т.к. у самого есть подпапки (форум), то основной код скрипта автобана подключаю через
Т.е. файл name_file.php лежит к корне сайта и перезаписывает .htaccess также в корне сайта.

Доброе время суток,
Пробовал делать и так, как у вас :
<?php include "../name_file.php";?>, но все равно не выходит, создается при переходе на любую страницу расположенную в папке сначала cron_time, а когда доступ закрывается и htaccess.
Для корневых страниц:
<?php include ("ban.php"); ?>
для страниц в папках:
<?php include ("../ban.php"); ?>

где в ban.php добавляется код аналога крона:
<?php
$cron_time=filemtime("cron_time");
if (time()-$cron_time>=600) {
file_put_contents("cron_time","");
include "ban/cron.php";
}
?>

Работает все, но непонятно почему создается в каждой папке cron_time и htaccess.
В корневых страницах тег <base>:
<base href="http://mysite.ru" />
и в страницах расположенных в папках:
<base href="http://mysite.ru/read/" />
Т.е. в корне сайта у меня, конечно, 1 файл htaccess и cron_time и в каждой папке
также по 1 файлу htaccess и cron_time. Если не банятся эти страницы, то cron_time создается все равно, а htaccess нет, он появляется после бана, например если я хочу забанить сам себя, то файл htaccess после бана и появляется.
(Последний раз сообщение было отредактировано 16.12.2014 в 18:16:51, отредактировал пользователь ale10ey.)
16.12.2014 18:10:05
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #99
RE: Немного измененный скрипт автобана
Попробуйте везде указывать абсолютный путь для файла .htaccess и cron_time.
16.12.2014 19:21:57
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #100
RE: Немного измененный скрипт автобана
(16.12.2014 19:21:57)Admin писал(а):  Попробуйте везде указывать абсолютный путь для файла .htaccess и cron_time.

Доброе время суток,
Как прописать абсолютный адрес, например, для cron.php я знаю:
<?php include("cron.php"); ?> - относительный адрес
<?php include $_SERVER['DOCUMENT_ROOT']."/cron.php"; ?> - абсолютный адрес
Нет изменений после смены адреса для cron.php
Как указать абсолютный путь для файла .htaccess и cron_time?

Для htaccess:
Код:
RedirectMatch /.* http://www.mysite.ru/
для любых страниц или иначе?

Для cron_time:
PHP код:
<?php
$cron_time
=filemtime("cron_time");     файла
if (time()-$cron_time>=600) {        
    
file_put_contents("cron_time","");    
    include 
"cron.php";                
}
?>
нужно изменить только в структуре filemtime абсолютный адрес и как указать?
Заранее благодарен, сам пока не нашел ответа почему так происходит.
17.12.2014 17:31:53
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru