1 (06-11-2015 11:51:45 отредактировано antton)

Тема: Не могу настроить нужные папки для сканирования

Я не хочу ставить САНТИ в корень сайта в папку "/santi". Мне это не удобно. Обусловлено обслуживанием сайта. В результате ставлю его чуть глубже в папку: "/files/all/prog/santi". Т.е. адреса папок следующие...
1) папка с сайтом
Адрес в интернете: http://www.domen.ru/
Полный путь на сервере: /home/www/
2) папка с САНТИ
Адрес в интернете: http://www.domen.ru/files/all/prog/santi
Полный путь на сервере: /home/www/files/all/prog/santi

В результате как ни крутил и не менял настройки, САНТИ сканирует только содержимое папки "/home/www/files/all/prog/"
Как подправить код САНТИ, чтобы сканировать папки "/home/www/" ?

2 (07-11-2015 05:20:20 отредактировано antton)

Re: Не могу настроить нужные папки для сканирования

И сам себе отвечаю:
Полный путь к моему сайту я указываю при установке САНТИ. Он записывается в параметр "SANTI_SERVERPATH". Как выясняется он использует этот параметр, но только при создании файловых бэкапов - в "Резервном копировании файлов" и в утилите "Бекап и восстановление файлов. А вот при мониторинге сайта на изменённые файлы и в утилите "Date-поиск файлов" этот параметр просто не учитывает и считается по умолчанию что САНТИ установлен в корневую папку сайта.

1. Редактируем файл lib/scanfiles.php было:

    case "1":
        $dirfrom = '../';
        $dbfile = 'scfiles.sfa';
        $mask .= SANTI_STOPF;
        autopilots_add_time(1);
      break;

стало:

    case "1":
//<!--исправляем ошибку САНТИ по определению пути
//      $dirfrom = '../';
        $dirfrom = SANTI_SERVERPATH;
//-->
        $dbfile = 'scfiles.sfa';
        $mask .= SANTI_STOPF;
        autopilots_add_time(1);
      break;

2. Редактируем файл controllers/scanfiles.php было:

    case "1":
        $dirfrom = '../';
        $dbfile = 'scfiles.sfa';
        $mask .= SANTI_STOPF;
        autopilots_add_time(1);
      break;

стало:

    case "1":
//<!--исправляем ошибку САНТИ по определению пути
//      $dirfrom = '../';
        $dirfrom = SANTI_SERVERPATH;
//-->
        $dbfile = 'scfiles.sfa';
        $mask .= SANTI_STOPF;
        autopilots_add_time(1);
      break;

3. Редактируем файл controllers/datefinder.php было:

$finishdate = mktime(24, 0, 0, $fdarr[1], $fdarr[0], $fdarr[2]);

chdir('../');
$dir = getcwd().'/';
$ext = array(); 
$results = array(); 

стало:

$finishdate = mktime(24, 0, 0, $fdarr[1], $fdarr[0], $fdarr[2]);

//<!--исправляем ошибку САНТИ по определению пути
//chdir('../');
//$dir = getcwd().'/';
$dir = SANTI_SERVERPATH.'/';
//-->
$ext = array(); 
$results = array(); 

3

Re: Не могу настроить нужные папки для сканирования

Думаю этот момент надо поправить в самом САНТИ. Ну и плюс вообще в настройках должны быть отдельные настройки на то какие папки сканировать, а какие бэкапить. Отдельные пути и возможность указания различных папок.

Re: Не могу настроить нужные папки для сканирования

antton пишет:

Думаю этот момент надо поправить в самом САНТИ. Ну и плюс вообще в настройках должны быть отдельные настройки на то какие папки сканировать, а какие бэкапить. Отдельные пути и возможность указания различных папок.

Спасибо, внесем данную правку в релиз.

5 (06-11-2015 22:09:03 отредактировано antton)

Re: Не могу настроить нужные папки для сканирования

Отлично, тогда ещё надо будет учесть:
1. Что при установке в поле вода "Имя папки антивируса" определяется и выводиться путьиназваниепапки без слэшей, должно быть "files/all/prog/santi", а установщик выводит "filesallprogsanti". В подсказках к путям установки должны быть примеры написания адресов. И плюс обязательно указано, что "(!)адрес пишется без слэша в конце" :-) Кстати, можно сделать автопроверку на наличие слэша в конце и убирать его.

2. Также добавить возможность в исключениях сканируемых файлов указывать не название папки, а путь к ней.

3. При обработке изменённых фалов и выводе/сохранение статистики нужно укоротить сохраняемые пути:

/var/www/vhosts/***/***/***/httpdocs/mysyte/files/all/atach/t143f.txt

Есть "папка с сайтом", она указывается при установке "SANTI_SERVERPATH", так вот всё что до неё лучше обрезать, вставляя надпись "[server]":

[server]/files/all/atach/t143f.txt

Во-первых, пути слишком длинные их не удобно читать в приходящих от САНТИ письмах, а во вторых, это просто сжирает место и ресурсы и является лишней информацией. А при переностройке САНТИ и указании другого пути, сообщать пользователю, что необходим пересчёт индекса и переиндескирование базы файлов. И перестраивать/пересчитывать базу в соответствии с новым изменением пути. При этом я бы ещё создал отдельный раздел с историей, где сохранял бы всё, даже если изменён путь расположения сайта, чтобы история сохранялась. Т.е. при выводе ошибок изменённых файлов создать возможность выборки и вывода информации по датам проверки.

4. Это пожелание, в общем то не в эту тему. Но раз уж печатаю...
По другому обозвать при установке ваш cron "Ручная настройка CRON для автопилотов". Я бы назвал наоборот "Запус cron-а для автопилотов через сервис САНТИ (santivi.com)" поставил бы переключатель "включено", а в комментарии написал, что: "Вы можете отключить данную функцию, если на устанавливаемом вами сайте есть возможность использования собственного cron-а и вы знаете как его настроить. Вы всегда сможете отключить эту функцию в настройках потом."

6 (06-11-2015 23:27:00 отредактировано antton)

Re: Не могу настроить нужные папки для сканирования

И ещё вопросец, что будет если скрипт встретить заблокированную папку:
- Папка на которой стоит пароль .htaccess?
- Папка которая заблокирована хостингом (не доступна для захода по FTP)?

Я так понимаю, просто остановит сканирование, если не сможет получить доступ. Верно?)

Re: Не могу настроить нужные папки для сканирования

antton пишет:

И ещё вопросец, что будет если скрипт встретить заблокированную папку:
- Папка на которой стоит пароль .htaccess?
- Папка которая заблокирована хостингом (не доступна для захода по FTP)?

Я так понимаю, просто остановит сканирование, если не сможет получить доступ. Верно?)

скрипт должен продолжать работать, запрет доступа к папке по FTP или basic авторизация проблем не создадут. Помешать работе скрипта могут другие владельцы на папках.

8 (07-11-2015 03:50:18 отредактировано antton)

Re: Не могу настроить нужные папки для сканирования

Хорошо. Тогда уточню вопрос. У меня в корне сайта есть папки log, webstat, cgi-bin, mysite (в ней сам сайт), tmpfiles. В папки log и webstat - я зайти через FTP не могу, на них выставлены права 750 и владелец другой. САНТИ при встрече с такой папкой что сделает? Пропустит и пойдёт дальше? Или наткнувшись на неё прервёт проверку? Или просканирует содержимое?

Re: Не могу настроить нужные папки для сканирования

antton пишет:

Хорошо. Тогда уточню вопрос. У меня в корне сайта есть папки log, webstat, cgi-bin, mysite (в ней сам сайт), tmpfiles. В папки log и webstat - я зайти через FTP не могу, на них выставлены права 750 и владелец другой. САНТИ при встрече с такой папкой что сделает? Пропустит и пойдёт дальше? Или наткнувшись на неё прервёт проверку? Или просканирует содержимое?

Должен пройти мимо.

10

Re: Не могу настроить нужные папки для сканирования

Не могу гарантировать, но вроде не проходит дальше. А при попадании папки с другим владельцем дальнейшее сканирование прерывается.

Re: Не могу настроить нужные папки для сканирования

antton пишет:

Не могу гарантировать, но вроде не проходит дальше. А при попадании папки с другим владельцем дальнейшее сканирование прерывается.

Надо будет сделать обработку таких ошибок.