Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
<?php
/**
* скрипт перекидывающий показ статистики из корня
*/
chdir(dirname(__FILE__));
chdir('../..');
/**
* место где находится скрипт статистики на самом деле
*/
DEFINE('CN_SOURCE_LOCATION','outsourceing/cnstats/');
/**
* где он должен находится относительно корня на веб
*/
DEFINE('CN_WEB_LOCATION','stat');
require_once 'common/General/class.OwnerIPs.php';
$ownerIPs = new OwnerIPs();
$alesGut=false;
$debug = false;
if (preg_match('/^\/'.CN_WEB_LOCATION.'\/cntc\.php.*$/',$_SERVER['REQUEST_URI']) || $ownerIPs->checkIP($_SERVER['REMOTE_ADDR']))
{
if ($debug)
$handle = fopen('logs/stat_soft_requirer.log','a+');
if ($debug)
fwrite($handle,"request: ".$_SERVER['REQUEST_URI']."\n");
/**
* Затычка возвращающая GET в норму
*/
if (preg_match('/([^?]*)$/',$_SERVER['REQUEST_URI'],$match))
{
$params = explode("&",$match[1]);
foreach ($params as $_value)
{
list($key,$value) = split('=',$_value);
$_GET[$key]=urldecode($value);
}
}
if ($debug)
fwrite($handle,"get: ".var_export($_GET,true)."\n");
chdir(CN_SOURCE_LOCATION);
$req = $_SERVER['REQUEST_URI'];
if (preg_match('/^\/'.CN_WEB_LOCATION.'\/index\.php\??(.*)$/',$req,$match))
{
if ($debug)
{
fwrite($handle,"index.php\n");
fwrite($handle,"params: ".$match[1]."\n");
}
$_SERVER["QUERY_STRING"]=$match[1];
require_once('index.php');
$alesGut=true;
} elseif (preg_match('/^\/'.CN_WEB_LOCATION.'\/(.*\.php)\??(.*)$/',$req,$match) )
{
$file = $match[1];
if ($debug)
{
fwrite($handle,"open: ".$match[1]."\n");
fwrite($handle,"params: ".$match[2]."\n");
}
$_SERVER["QUERY_STRING"]=$match[2];
$_returnToRoot = false;
if (preg_match('/^\/'.CN_WEB_LOCATION.'\/([^\/]*)\/(.*\.php)\??(.*)$/',$req,$match) )
{
if ($debug)
{
fwrite($handle,"chdir: ".$match[1]."\n");
fwrite($handle,"open: ".urldecode($match[2])."\n");
}
if (file_exists($match[1]))
{
chdir($match[1]);
$file = urldecode($match[2]);
}
$_returnToRoot = true;
}
if (file_exists($file))
{
require_once($file);
$alesGut=true;
}
if ($_returnToRoot)
{
chdir('..');
}
} elseif (strstr($_SERVER['REQUEST_URI'],'css'))
{
if ($debug)
fwrite($handle,"css\n");
if (file_exists('cnstats.css'))
{
readfile('cnstats.css');
$alesGut=true;
}
} elseif (preg_match('/^\/'.CN_WEB_LOCATION.'\/img\/(.*\.gif)$/',$req,$match))
{
if ($debug)
fwrite($handle,$match[1]."\n");
if (file_exists(urldecode('img/'.$match[1])))
{
readfile(urldecode('img/'.$match[1]));
$alesGut=true;
}
} else
{
require_once('index.php');
$alesGut=true;
}
if ($debug)
fwrite($handle,"\n");
}
if (!$alesGut)
{
header("HTTP/1.0 404 Not Found");
header("Location: ../index.html");
}
?>
RewriteEngine on
RewriteRule ^.htaccess$ - [F]
RewriteRule ^(.*)$ index.php?$1 [L]
RewriteRule ^(img\/.*)?$ index.php [L]
<IfModule mod_php4.c>
php_flag session.use_trans_sid off
php_value register_globals off
</IfModule>
<IfModule mod_php5.c>
php_flag session.use_trans_sid off
php_value register_globals off
</IfModule>
<IfModule mod_security.c>
SecFilterCheckURLEncoding Off
</IfModule>
Такой вариант уже здесь обсуждался, в другой ветке (h**p://www.nulled.ws/showthread.php?t=18169) и как ты совершенно верно заметил он накладывает определенные ограничения.а может просто запаролить папку со статитстикой с помощью .htpasswd ???
правда тогда придется использывать счетчик только PHP-Include (
Кривые руки ацтой, а не CNStats, говоришь дыры - давай фрагменты кода - народ поправит ... а по поводу трояна, поменяй пароль к ftp и почисти от бяк.Да CNStats ацтой...
установил без проблем, но дыр у него ужас как много. Вчера захожу на свой сайт и NOD32 выдаёт что там троян :read: Да ещё и ничего не отображалось (картинки, текст). Пришлось убрать его.
Кривые руки ацтой, а не CNStats, говоришь дыры - давай фрагменты кода - народ поправит ... а по поводу трояна, поменяй пароль к ftp и почисти от бяк.