вопрос
Идет большая нагрузка на сервер, хостер посоветовал настроить кеширование по схеме:
что куда вставлять я не понял, у меня в файле index.php нет таких значений.
Инструкция по установке:
1. Создаем папку /engine/cache/all и ставим на нее права на запись (chmod 777 или 775 в зависимости от хостера).
2. Открываем index.php и редактируем:
Находим:
Вставляем после:
Находим:
Вставляем перед:
Находим:
Вставляем после:
После этих манипуляций в папке /engine/cache/all будут накапливаться кешированные страницы сайта.
Для того чтобы устаревший кеш редкооткрываемых страниц не копился и не забивал вам винчестер, добавляем по крону выполнение следующего скрипта каждые 10 минут например.
вот мой файл index.php что куда всталять не понимаю
Заранее спасибо?
что куда вставлять я не понял, у меня в файле index.php нет таких значений.
Инструкция по установке:
1. Создаем папку /engine/cache/all и ставим на нее права на запись (chmod 777 или 775 в зависимости от хостера).
2. Открываем index.php и редактируем:
Находим:
@session_start ();
Вставляем после:
///////////////Файловое кэширование//////////////
if($_SESSION['dle_user_id'] == 0 && $_SERVER['REQUEST_METHOD'] == "GET")
{
$cache_time = 21600; //Время жизни кеша в секундах
$FCache = $_SERVER['DOCUMENT_ROOT'].'/engine/cache/all/'.md5($_SERVER['REQUEST_URI']).'.html';
if (file_exists($FCache) && filemtime($FCache)>time()-$cache_time)
{
echo join('',file($FCache))."<!-- use cache -->";
exit;
}
}
/////////////////////////////////////////////////
Находим:
$tpl->compile ( 'main' );
Вставляем перед:
ob_start();
Находим:
GzipOut ();
Вставляем после:
//////////Файловое кэширование//////////
if($_SESSION['dle_user_id'] == 0 && $_SERVER['REQUEST_METHOD'] == "GET")
{
$pageBuf = ob_get_contents();
$fp = fopen($FCache, "w");
fputs($fp, $pageBuf);
fclose($fp);
}
////////////////////////////////////////
После этих манипуляций в папке /engine/cache/all будут накапливаться кешированные страницы сайта.
Для того чтобы устаревший кеш редкооткрываемых страниц не копился и не забивал вам винчестер, добавляем по крону выполнение следующего скрипта каждые 10 минут например.
$cache_time = 21600+10; //Время жизни кеша в секундах + 10 секунд
$url = "/home/admin/domains/site.ru/public_html/engine/cache/all/"; // полный путь к папке с кешем от корня сервера.
$dir = opendir($url);
while(($file = readdir($dir)) !== false)
{
$ras = pathinfo($file);
if($ras[extension] == 'html')
{
$FCache = $url.$file;
if (file_exists($FCache) && filemtime($FCache) < time()-$cache_time)
{
unlink($FCache);
}
}
}
closedir($dir);
вот мой файл index.php что куда всталять не понимаю
@ob_start ();
@ob_implicit_flush ( 0 );
if( !defined( 'E_DEPRECATED' ) ) {
@error_reporting ( E_ALL ^ E_WARNING ^ E_NOTICE );
@ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE );
} else {
@error_reporting ( E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE );
@ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_DEPRECATED ^ E_NOTICE );
}
@ini_set ( 'display_errors', true );
@ini_set ( 'html_errors', false );
define ( 'DATALIFEENGINE', true );
define ( 'ROOT_DIR', dirname ( __FILE__ ) );
define ( 'ENGINE_DIR', ROOT_DIR . '/engine' );
require_once ROOT_DIR . '/engine/init.php';
?>
Заранее спасибо?