Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » О непонятных файлах папок forum

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Давно, давно уже хочу спросить,
1) Откуда берется и зачем нужен файл .pl (с отсутствующим именем) в папках forum;
2) То же - index.html;
3) Почему пустые файлы pl (например, удаленных тредов), судя по дате, постоянно обновляются.
4) Каким образом в одной из папок вдруг появляются десятки новых ненужных нулевых пл-ок (например, в разделе форума было заведено всего 100 тем, и вдруг появляются 101.pl, 102.pl, ... , 155.pl и т.д.). Их прибиваю, а они опять появляются. Не мешает, но интересно.
А?

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 15:12 02-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda
 

Цитата:
1) Откуда берется и зачем нужен файл .pl (с отсутствующим именем) в папках forum;  

 
Откуда берется - не знаю, а вот зачем нужен - ни за чем, сноси. Появился в результате глюка.
 
 
 
Marilda

Цитата:
2) То же - index.html;  

 
Он создается при создании каждого форума в админцентре, setforums.cgi:
 

Код:
 
   $filetomake = "$dirtomake/index.html";

 
Зачем нужен  - толком не могу себе представить, потому что и без них пашет.
 
 

Цитата:
4) Каким образом в одной из папок вдруг появляются десятки новых ненужных нулевых пл-ок (например, в разделе форума было заведено всего 100 тем, и вдруг появляются 101.pl, 102.pl, ... , 155.pl и т.д.). Их прибиваю, а они опять появляются. Не мешает, но интересно.  

 
 
Ну, можно предположить, что у кого-то, кто создавал новую тему, плохая связь - успевал создаться файл, .pl, но не успевала в него произойти записиь и не успевал создаться файл .thd, а коннект обрывался. На локалхосте такого нет, так ведь?

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 20:35 02-12-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx

Цитата:
Зачем нужен  - толком не могу себе представить, потому что и без них пашет.  

для того, чтобы нельзя было сделать листинг диры.. пусть даже и добавлены индекс файлы на перле или php, но вдруг они перестанут работать

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:21 02-12-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Спасибо
 
Cheery

Цитата:
для того, чтобы нельзя было сделать листинг диры

А вообще, в любой папке должен быть индекс? Даже если сервер настроен, что обращение к хттп://ццц.сайт.ру/папка/ выдает 403?
 
 
lynx

Цитата:
Ну, можно предположить, что у кого-то, кто создавал новую тему, плохая связь - успевал создаться файл, .pl, но не успевала в него произойти записиь и не успевал создаться файл .thd, а коннект обрывался. На локалхосте такого нет, так ведь?

Кто его знает, всякое может быть.. Только в двух /forumN/ такое случается. Одно время даже сотнями выгребала. Причем, знаешь, даже номера не по порядку Были номера типа 2245.pl, 2273.pl - при реальном числе топиков в пределах сотни.

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 02:45 03-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
 

Цитата:
для того, чтобы нельзя было сделать листинг диры.. пусть даже и добавлены индекс файлы на перле или php, но вдруг они перестанут работать  

 
Гм... Ну, значит, на хостингах или своих серверах, где стоит Options -Indexes эту строчку можно комментить.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 16:18 03-12-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx
Хм, застукала гугльбота за созданием сразу двух новых тем. Онлайн лог сохранила себе. Мне кажется, боты эти нулевые пл-ки и плодят. Закрыть, наерное, как-нибудь надо хттп://.../post.cgi?action=new.. в роботс.тхт.  

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 17:21 03-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda
 

Цитата:
 застукала гугльбота за созданием сразу двух новых тем.
 

 
Лапа
И как он их назвал?  
 

Цитата:
 
 Онлайн лог сохранила себе.  

 
Покажи!  
 
 

Цитата:
 Закрыть, наерное, как-нибудь надо хттп://.../post.cgi?action=new.. в роботс.тхт.  

 
Легко.  
 

Код:
 
User-agent: *
Disallow: /cgi-bin/где_там_форум_то/post.cgi
Disallow: /cgi-bin/где_там_форум_то/postings.cgi
Disallow: /cgi-bin/где_там_форум_то/messenger.cgi
Disallow: /cgi-bin/где_там_форум_то/whosonline.cgi
Disallow: /cgi-bin/где_там_форум_то/register.cgi
Disallow: /cgi-bin/где_там_форум_то/ikonfriends.cgi
 

 
Еще можно profile.cgi закрыть, чтобы мылы не индексил юзверевы.
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 18:47 03-12-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx
Он еще и голосование создавал
Глянь лог (кинула в ПМ).

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 19:56 03-12-2003
olsufr



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:

Цитата:
4) Каким образом в одной из папок вдруг появляются десятки новых ненужных нулевых пл-ок (например, в разделе форума было заведено всего 100 тем, и вдруг появляются 101.pl, 102.pl, ... , 155.pl и т.д.). Их прибиваю, а они опять появляются. Не мешает, но интересно.  
Ну, можно предположить, что у кого-то, кто создавал новую тему, плохая связь - успевал создаться файл, .pl, но не успевала в него произойти записиь и не успевал создаться файл .thd, а коннект обрывался. На локалхосте такого нет, так ведь?
Ни при обрыве связи, ни при нажатии STOP в броузере работа CGI-скрипта сервером не прерывается. По крайней мере, я такой вывод для себя сделал из этой темы:
CGI-скрипт на Perl, работа к-рого не прерывается броузером

Всего записей: 363 | Зарегистр. 07-08-2002 | Отправлено: 12:56 04-12-2003 | Исправлено: olsufr, 13:00 04-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
olsufr
 

Цитата:
Ни при обрыве связи, ни при нажатии STOP в броузере работа CGI-скрипта сервером не прерывается. По крайней мере, я такой вывод для себя сделал из этой темы:  
CGI-скрипт на Perl, работа к-рого не прерывается броузером  

 
А я вот четко знаю, что при обрыве связи скрипт прерывается, не сразу, но прерывается. Почему.  
Я захожку на консоль на сервер, запускаю индекс-скрипта - он индексирует мой сайт, потом поиск по базе делать. И если меня оборвало - база не создастся Это просто беда, потому что он работвет несколько часов (например, 3 часа). Мне приходится его запускать только по крону. Аналогично база не создастся, если скрипта запустить вызовом из браузера, а не в консоли, если оборвалась связь.
 
Но вот по локалхосту по билдингу той же самой базы могу сказать, что прерывается не сразу.
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 16:46 04-12-2003
ALX



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx

Цитата:
Я захожку на консоль на сервер, запускаю индекс-скрипта  

Если у тебя есть доступ к консоли, так почему не запустить скрипт как background process ?

Всего записей: 428 | Зарегистр. 30-01-2002 | Отправлено: 16:15 05-12-2003
olsufr



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx, понятно.
 
Marilda,
Цитата:
застукала гугльбота за созданием сразу двух новых тем. Онлайн лог сохранила себе. Мне кажется, боты эти нулевые пл-ки и плодят.  
А у тебя разве гостям разрешено отвечать и создавать новые темы? Если нет, то гугль просто физически не сможет создать файл *.pl (любого размера). Или может у тебя гугльбот и зарегистрироваться уже смог, тогда забань его.
 

Всего записей: 363 | Зарегистр. 07-08-2002 | Отправлено: 15:04 06-12-2003 | Исправлено: olsufr, 15:05 06-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Если у тебя есть доступ к консоли, так почему не запустить скрипт как background process ?

 
Я и так тоже запускаю, это не влияет. Бекграунд он, не бекграунд, он запущен текущим пользователем, под которым я вошла в систему, меня оборвало - Никс видит, что процесс пользователя прерван и потихоньку прибивает все мои задания (jobs).
 
В общем, все равно запускаю по крону. Даже если я ему понижаю приоритет то все равно по крону. Если мне надо стартовать скрипта сейчас, то крону указываю время сейчас. Тогда процесс полностью отработает и не оборвется.  
 
Проверено. Мин нет
 
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:30 07-12-2003
olsufr



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если у вас есть профильный файл с именем Guest.cgi  
и $ibtxt{'0043'} = "Guest"; ,
то могу подсказать где есть несколько сотен бесмысленных файлов.

Всего записей: 363 | Зарегистр. 07-08-2002 | Отправлено: 14:03 07-12-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
olsufr

Цитата:
Если у вас есть профильный файл с именем Guest.cgi  
и $ibtxt{'0043'} = "Guest";  

У всех так, в дефолтной так.  
 

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 02:29 09-12-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
olsufr
 

Цитата:
Если у вас есть профильный файл с именем Guest.cgi  
и $ibtxt{'0043'} = "Guest"; ,  
то могу подсказать где есть несколько сотен бесмысленных файлов.

 
Так-так, с этого момента поподробней, пжлст.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 21:39 09-12-2003
olsufr



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извиняюсь, что заставил ждать.
 
Значит так. То что я говорю относится к подписке на обновления в теме.
 
Для начала, как гость открываете любую тему форума и нажимаете на ссылку Подписаться на извещения об обновлениях в теме.
Если бы все работало корректно, то вы получите сообщение об ошибке с текстом Вы шутите??? Гости не могут подписаться на извещения о новых сообщениях в теме.
Если вы не увидели этого сообщения, а прочитали, что Вы подписаны на извещения о новых сообщениях в тему,
то читайте дальше. В результате этого действия, если ранее никто из зарегистрированных пользователей не подписывался на эту тему, был создан файл *.mal с бесмысленным содержимым: "Guest|" То ли из-за странного любопытсва гостей, то ли из-за поисковиков, но таких бесмысленных файлов за несколько лет работы форума у меня скопилось около тысячи.
 
 
Предлагаю немного модифицировать сам хак подписки, чтобы не создавались такие записи.
В скрипте postings.cgi найти подпрограмму subscribe и в самом ее начале строки:

Код:
if ($userregistered eq "no"){  
&error("Извещения о новых сообщениях&Вы шутите??? Гости не могут подписаться на извещения о новых сообщениях в теме.");  
}  

заменить на такие:

Код:
if (($membername eq $ibtxt{'0043'}) || ($userregistered eq "no")){  
&error("Извещения о новых сообщениях&Вы шутите??? Гости не могут подписаться на извещения о новых сообщениях в теме.");  
}  

 
Для того чтобы почистить свой форум от ненужных файлов (а заодно и узнать, сколько их у вас скопилось) предлагаю такой скрипт  
(сохраните его под именем delmal.cgi и поместите его в ту директорию где у вас находятся все рабочие скрипты форума):

Код:
#!/usr/bin/perl
 
### (c) olsufr
 
$| = 1;
 
my $thisprog = "delmal.cgi";
 
 
###
my $actiontitle = 'Удаление пустых (и бессмысленных) файлов <b>*.mal</b>';
 
print "Content-Type: text/html\n\n";
&header();
 
use CGI qw(:standard);
$query = new CGI;
$inmembername = $query->param('inmembername');
$inpassword = $query->param('inpassword');
 
if (($inmembername eq '') || ($inpassword eq '')) {
$message = 'Введите ваши данные:';
&form();
print '</body></html>';
exit;
}
 
if (($inmembername ne 'ruboard') || ($inpassword ne 'ruboard')) {
$message = 'Вы ввели ошибочные данные!';
&form();
print '</body></html>';
exit;
}
 
$message = 'Авторизация прошла успешно!';
&form();
 
my $action = $query->param('action'); my $color = 'blue';
if ($action ne 'view') { $action = 'doit'; $color = 'red'; }
 
print qq~<i>$actiontitle: <font color=$color><b>$action</b></font>
<br> <br><hr size=1 color=black width=80%><br>~;
 
 
 
 
 
my ($totalsum,$sum) = (0,0);
my $allforumsfile = 'data/allforums.cgi';
unless ( open(FILE, "$allforumsfile") ) {
print "<font color=red>Can not open file <b>$allforumsfile</b></font>";
exit;
}
flock FILE,1;
my @forums = <FILE>;
close(FILE);
@forums = sort @forums;
 
my ($forumid, $forumtitle);
foreach $forumline (@forums) {
chomp $forumline;
($forumid, $tr, $tr, $forumtitle) = split(/\|/,$forumline);
my $forumDir = "./forum$forumid/";
 
print qq~<font size=4>Форум <b>"$forumtitle"</b> - id: <b>$forumid</b></font><br> <br>~;
 
unless (opendir(DIR, "$forumDir")) {
print qq~<font color=red>Can not open forum folder: <b>$forumDir</b></font><br>~;
next;
}
my @topics = readdir(DIR);
closedir(DIR);
 
 
##############################
@topicsmal = grep(/\.mal$/i,@topics);
foreach $topicfile (@topicsmal) {
my($topicid) = split(/\.mal/i,$topicfile);
$topicfile =~m/(.+)\.mal$/i;
$topicid = $1;
if (open(FILE, "$forumDir$topicfile")) {
flock(FILE,1);
my @mallines = <FILE>;
close(FILE);
next if (@mallines > 1);
chomp $mallines[0];
my ($name, $email) = split (/\|/,$mallines[0]);
if ($email eq '') { &delmal($forumDir,$topicid); }
} else { print qq~<font color=red>Can not open file <b>$forumDir$topicfile</b>.</font><br>~; }
}
 
print qq~Удалено <b>$sum</b> пустых файлов подписки.<br> <br> <br>~;
$totalsum += $sum;
$sum = 0;
###############################
print "<hr size=1 color=black width=80%><br>";
}
 
print qq~Всего удалено <font color=$color3><b>$totalsum</b></font> пустых файлов подписки.<br> <br>
<hr size=1 color=black width=50%>
</center>
</body>
</html>~;
 
sub delmal {
my ($forumDir, $topicid) = @_;
 
if ($action eq 'doit') {
if (unlink ("$forumDir$topicid.mal")) {
$sum++;
print qq~Subscribe file $forumDir<b>$topicid.mal</b> is deleted.<br>~;
} else {
print qq~<font color=red>Can not delete file <b>$forumDir$topicid.mal</b></font><br>~;
}
} else {
$sum++;
print qq~Subscribe file $forumDir<b>$topicid.mal</b> must be deleted.<br>~;
}
}
 
 
 
sub header {
print qq~<html><head><meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
<title>$actiontitle</title></head>
<body><style>
body, td {font-family:Verdana;font-size:10pt;}
h3 {font-size:12pt;font-weight:bold;color:#333333;}
hr {color:#333333;}
</style>
<center>
<h3>$actiontitle</h3><br>
~;
 
}
 
sub form {
print qq~<form action="$thisprog" method="post">
<table>
<tr><td valign=middle align=center>$message</td></tr>
<tr><td valign=middle align=center>
<table>
<tr>
<td valign=middle align=right>Логин:</td>
<td valign=middle><input type=text name="inmembername" value="" size=20 tabindex=1></td>
</tr>
<tr>
<td valign=middle align=right>Пароль:</td>
<td valign=middle><input type=password name="inpassword" value="" size=20 tabindex=2></td>
</tr>
</table>
</td></tr>
<tr>
<td valign=middle align=center><br>
<table>
<tr><td valign=top align=right><b>Пред. просмотр:</b></td><td><input type=checkbox name="action" value="view" checked> - </td><td>$actiontitle</td>
</table><br>
</td>
</tr>
<tr>
<td valign=middle align=center><input type=submit name="submit" value="ПУСК" tabindex=3></td>
</tr>
</table>
</form>
<hr size=1 width=80%><br>
~;
}
 
 
 

 
Пароль и логин: ruboard
 
Сначала запустите скрипт с нажатой галочкой пред.просмотра, а для реального удаления отожмите ее.
 
 
 

Всего записей: 363 | Зарегистр. 07-08-2002 | Отправлено: 12:55 13-12-2003 | Исправлено: olsufr, 12:59 13-12-2003
DStream

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx

Цитата:
Я и так тоже запускаю, это не влияет. Бекграунд он, не бекграунд, он запущен текущим пользователем, под которым я вошла в систему, меня оборвало - Никс видит, что процесс пользователя прерван и потихоньку прибивает все мои задания (jobs).  

nohup myprocess >log 2>err
не поможет?

Всего записей: 605 | Зарегистр. 03-05-2003 | Отправлено: 01:17 16-01-2004
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » О непонятных файлах папок forum


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru