-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcache-top.php
90 lines (85 loc) · 3.2 KB
/
cache-top.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?php
$urlmd = $_SERVER["REQUEST_URI"];
$templ = 1;
if(isLoginUser())
{
if(!empty($_SESSION['codbxpasssteam']))
$byWhois = isLoginUserWHO($_SESSION['codbxpasssteam']);
else if(!empty($_COOKIE['user_online_login']))
$byWhois = isLoginUserWHO($_COOKIE['user_online_login']);
else if(!empty($_COOKIE['user_online_key']))
$byWhois = isLoginUserWHO($_COOKIE['user_online_key']);
else
$byWhois = 'Who';
$byWho = "&byadmin=".$byWhois;
$urlmd5 = sha1($urlmd).md5($urlmd.$byWho);
}
else
$urlmd5 = md5($urlmd);
//Время хранения кеширования
if(strlen($urlmd5) < 40)
{
//======== ГОСТЯМ
if(strpos($url, "chat.php") !== false)
$cachetime = 60; // 60 секунд
else if(strpos($url, "index.php") !== false)
$cachetime = 60; // 60 секунд
else if((strpos($urlmd, "img.php?server=0") !== false)||(strpos($urlmd, "img.php") !== false))
$cachetime = 90; // 90 секунд
else if(strpos($url, "img.php") !== false)
$cachetime = 60; // 60 секунд
else if(strpos($url, "stats_medals.php") !== false)
$cachetime = 48600; //
else if(strpos($url, "stats.php") !== false)
$cachetime = 1800; // 3600 секунд / 1/2 часa
else if(strpos($url, "stats_day.php") !== false)
$cachetime = 3600; // 3600 секунд / 1 час
else if(strpos($url, "stats_week.php") !== false)
$cachetime = 3600; // 3600 секунд / 1 час
else if(strpos($url, "geo.php") !== false)
$cachetime = 48600; //
else
$cachetime = 10600; // 10600 секунд / 3 часa
//======== ГОСТЯМ
}
else
{
//======== АДМИНАМ
if(strpos($url, "chat.php") !== false)
$cachetime = 8; // 8 секунд
else if(strpos($url, "list_ip_ban.php") !== false)
$cachetime = 1; // 1 секунд
else if(strpos($url, "index.php") !== false)
$cachetime = 10; // 10 секунд
else if(strpos($url, "list.php") !== false)
$cachetime = 30; // 10 секунд
else if((strpos($urlmd, "img.php?server=0") !== false)||(strpos($urlmd, "img.php") !== false))
$cachetime = 10; // 10 секунд
else if(strpos($url, "img.php") !== false)
$cachetime = 5; // 5 секунд
else if(strpos($url, "geo.php") !== false)
$cachetime = 48600; //
else if(strpos($url, "stats_medals.php") !== false)
$cachetime = 48600; //
else if(strpos($url, "stats.php") !== false)
$cachetime = 300; // 900 секунд / 5 минут
else
$cachetime = 30; // 30 секунд
//======== АДМИНАМ
}
$break = Explode('/', $url);
$file = $break[count($break) - 1];
$cachefile = substr_replace($file ,"",-4).'_'.$urlmd5.'_'.$languagefor.'.codboxcache';
$fl = $cpath .'/data/cache/html_data/';
if (!file_exists($fl))
mkdir($fl, 0777, true);
$cachefile = $fl.$cachefile;
// Обслуживается из файла кеша, если время запроса меньше $cachetime
if (file_exists($cachefile) && time() - $cachetime < filemtime($cachefile)) {
echo "<!-- Cached copy, generated ".date('H:i', filemtime($cachefile))." -->\n";
include($cachefile);
//echo "Cached, generated ".date('H:i', filemtime($cachefile))."";
exit;
}
ob_start(); // Запуск буфера вывода
?>