Shurik
Главком. флейма | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Marilda Цитата: А сколько надо, чтоб достаточно было? | хм... вообще-то если форум раскрученный (и часто пишут), то если бы я сказал, что 5 метров, то это было бы мало, ибо эти 5 метров у тебя скушаются может быть за неделю. Поэтому чем больше места, тем лучше. Цитата: Заодно научи, плз, как проверить Не с калькулятором по папкам ходить, наверное, где-то цифорку вывести можно? | вообще я подумал, что у тебя платный хостинг. На любом платном хостинге должна быть панель управления - там и увидишь. Если нет такого - спроси админов сколько у тебя свободного места. Не скрипт же писать для подсчета. В крайнем случае придется с калькулятором по папочкам походить - выделяешь все файлы в total commander (бывший WC) и смотришь объем. Ты вообще знаешь сколько тебе выделили места? Цитата: Не думаю, чтобы причина сбоев была в этом, потому что пару раз сносили часов в 7 мск, то есть при минимальной нагрузке. | тогда места мало видать. Не бывает это просто так... а вообще из-за того, что у меня когда-то на кое-каком хостинге тоже глюки такие были, пришлось мне написать нечто такое: Код: $filetoopen = "$ikondir" . "forum$inforum/list.cgi"; if (-z $filetoopen) { &recount; } | это означает, что если размер файла = 0, то вызываем recount. а Recount я написал такой: Код: sub recount { #start local($inforumloc) = @_; $dirtoopen = "$ikondir" . "forum$inforumloc"; opendir (DIR, "$dirtoopen"); @dirdata = readdir(DIR); closedir (DIR); @thd = grep(/thd/,@dirdata); $topiccount = @thd; foreach $topic (@thd) { $filetoopen = "$ikondir" . "forum$inforumloc/$topic"; open (FILE, "$filetoopen"); @threads = <FILE>; close (FILE); $newthreads = @threads; $newthreads--; $threadcount = ($threadcount + $newthreads); } $threadcount = "0" if (!$threadcount); $topiccount = "0" if (!$topiccount); $filetoopen = "$ikondir" . "data/allforums.cgi"; open(FILE,"$filetoopen") or &systemerror("$ibtxt{'2913'} $filetoopen"); @allforums = <FILE>; close(FILE); $filetomake = "$ikondir" . "data/allforums.cgi"; $filetomake = &stripMETA($filetomake); foreach $forum (@allforums) { #start foreach @forums chomp($forum); ($tempno, $trash) = split(/\|/,$forum); if ($inforumloc eq $tempno) { ($forumid, $category, $categoryplace, $forumname, $forumdescription, $forummoderator ,$htmlstate ,$idmbcodestate ,$privateforum, $startnewthreads ,$lastposter ,$lastposttime, $threads, $posts, $forumgraphic, $pollstate) = split(/\|/,$forum); $posts = $threadcount; $threads = $topiccount; $processed_data .= "$forumid|$category|$categoryplace|$forumname|$forumdescription|$forummoderator|$htmlstate|$idmbcodestate|$privateforum|$startnewthreads|$lastposter|$lastposttime|$threads|$posts|$forumgraphic|$pollstate|\n"; } else { $processed_data .= "$forum\n"; } } if (($processed_data eq "") || ($processed_data !~ m!\|!)) { &error("Missing Data&Data as corrupted on the server. Please go back and try again"); } open(FILE, ">$filetomake"); flock(FILE, 2); print FILE $processed_data; close(FILE); undef $processed_data; rebuildLIST(-Forum=>"$inforumloc"); } # routine ends | а может и не я писал, я уже и не помню. помню точно, проверки сам писал. Тогда и процедурку тоже возможно.
|