Контакты для связи с администрацией ресурса www.saloed.net, skype: sa-lo-ed или Email:sal0ed@yandex.ru

 

Управление кешем в Vii Engine

 

В папке ./system/inc/ создаем файл cache.php со следующим содержимым:


<?php
/*
Appointment: Управление кешем
File: cache.php

*/
if(!defined('MOZG'))
die('Hacking attempt!');

echoheader();
echohtmlstart('Чистка кеша пользователей');
// Чистим кеш профиля определенного пользователя
if(isset($POST['cid']))
{
$user_id = intval($_POST['cuid']);
mozg_clear_cache_file('user_'.$user_id.'/profile_'.$user_id);
}
// Чистим кеш по списку ID - ОТ и ДО
if(isset($POST['ciduids']))
{
$start_id =intval($_POST['startuid']);
$end_id =intval($_POST['enduid']);
while($start_id < $end_id)
{
$start_id++;
$user_id = $start_id;
mozg_clear_cache_file('user_'.$user_id.'/profile_'.$user_id);
}
}
// Чистим вообще весь кеш
if(isset($POST['cidall']))
{
$files = glob("system/cache/*");
$c = count($files);
if (count($files) > 0) {
foreach ($files as $file) {
if (file_exists($file)) {
unlink($file);
}
}
}
}

function dirsize($directory){
if(!is_dir($directory)) return - 1;
$size = 0;
if($DIR = opendir($directory)){
while(($dirfile = readdir($DIR)) !== false){
if(@is_link($directory.'/'.$dirfile) || $dirfile == '.' || $dirfile == '..') continue;
if(@is_file($directory.'/'.$dirfile)) $size += filesize($directory . '/' . $dirfile);
else if(@is_dir($directory.'/'.$dirfile)){
$dirSize = dirsize($directory.'/'.$dirfile);
if($dirSize >= 0) $size += $dirSize;
else return - 1;
}
}
closedir( $DIR );
}
return $size;
}

$cache_size = formatsize(dirsize("/system/cache"));

echo '

<div class="fllogall">Размер папки system/cache/:</div>
<div style="margin-bottom:10px">'.$cache_size.'&nbsp;</div>
<div class="mgcler"></div>

<form method="POST">Удалить кеш конкретного ID: <input type="text" name="cuid"><input type="submit" name="cid" value="Удалить!"></form>
<br>
<br>
<form method="POST">Удалить кеш нескольких ID: От ID:<input type="text" name="startuid"> До ID:<input type="text" name="enduid"><input type="submit" name="ciduids" value="Удалить!"></form>
<br>
<br>
<form method="POST">Удалить весь кеш, *** знает зачем: <input type="submit" name="cidall" value="Удалить весь кеш!"></form>
';

echohtmlend();
?>


В файле ./system/inc/main.php

Добавляем:
 

echoblock('Управление кешем', 'Чистка кеша профиля выбранных пользователей', 'cache', 'cache'); 



В файле ./system/inc/mod.php
Добавляем:
//cache
case "cache":
include ADMIN_DIR.'/cache.php';
break;

 

 

Связь с автором

Автор: websbk от 3-02-2013, 12:52

Сказали спасибо: rasamacha, slot800, extreemer
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Комментарии: Оставить комментарий
  • Группа: Гости 5 февраля 2013 19:09
^
полезный хак, особенно для уже хорошо посещаемого сайта, спасибо.
  • Группа: Гости 6 февраля 2013 15:32
^
это точно для посещаемого сайта просто незаменимый хак
  • Группа: Гости 8 февраля 2013 19:36
^
Спасибо за полезность.
  • Группа: Гости 10 февраля 2013 01:02
^
Да действительно хороший хак,спасибо+
  • Группа: Гости 16 февраля 2013 10:34
^
Без чистки кеша сайт ложиться, все таки как ни как серьезный движок. вот только эта чистка автоматическая или в ручную надо?
Назад Вперед
Наверх
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Дополнения для InstantCMS
 
Copyright © 2009-2015

Дополнения для InstantCMS | Рипы сайтов | Социальные сети