Rostov114 писал(а):On-line писал(а):И топсервер.
Млять Apache ведь стоит...
Стоит Путь не такой
Rostov114 писал(а):On-line писал(а):И топсервер.
Млять Apache ведь стоит...
DirectoryIndex phpruauth.php
<Files config.inc>
order allow,deny
deny from all
</Files>
<?
$SERVER = 'domain.vfose.ru';
$LOGIN = "admin";
$PASSWORD = "pass";
$ERROR = "<CENTER><BR><FONT COLOR=RED><B>Неверный логин или пароль.<BR>ДОСТУП ЗАКРЫТ!";
$MAIL = "admin@mail.ru";
?>
<?
session_name("ADMIN_SESS");
session_start();
session_register("access","no_access");
?>
<HTML>
<HEAD>
<TITLE>Администрирование</TITLE>
<LINK href="phpru.css" type=text/css rel=stylesheet>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
</HEAD>
<CENTER>
<?
include ('config.inc');
$ip = getenv("REMOTE_ADDR");
$br = getenv("HTTP_USER_AGENT");
$ref = getenv("HTTP_REFERER");
/* проверяем с родного-ли хоста пришли данные */
$host = getenv("SERVER_NAME");
if (!ereg("$SERVER",$host))
{
if (isset($access))
$access++;
else
$access = 1;
if (($access == 1) or ($access == 10))
{ SendEmail($ip,$br,$ref,$access); }
echo "<BR><BR><CENTER><B><P><FONT COLOR=RED>Доступ закрыт!<BR>Вход только через <A HREF='".$SERVER."'>".$SERVER.'</A></BODY></HTML>';
exit;
}
/* выход, уничтожение сессии и переменных*/
if (isset($out))
{
session_destroy();
session_unset();
unset($out);
?>
<script language="JavaScript">window.location="http://<?=$SERVER?>"</script>
<?
exit;
}
session_register("sess_login","sess_pass");
if (isset($admin))
{
$sess_login = md5(trim($login));
$sess_pass = md5(trim($password));
ValidPass($sess_login,$sess_pass);
}
else
{
if (isset($no_access))
{
$no_access++;
if ($no_access == 4)
SendEmail($ip, $br, $ref, $access);
if ($no_access < 4)
ShowAdmin();
}
else
{
$no_access = 1;
ShowAdmin();
}
}
/* -------------------------------------------------------------------------------- */
function ShowAdmin()
{
?>
<CENTER><BR>
<FORM METHOD=POST>
<P><B>Вход для администратора:</B><BR><BR>
Логин <INPUT TYPE='TEXT' SIZE=11 MAXLENGTH=12 NAME='login'>
Пароль <INPUT TYPE='PASSWORD' SIZE=11 MAXLENGTH=12 NAME='password'>
<INPUT TYPE='submit' NAME='admin' VALUE='Ok' class=but
style="width:24px;cursor:hand;" onmouseover="this.style.backgroundColor='LIGHTYELLOW';" onmouseout="this.style.backgroundColor='transparent';">
</FORM><BR>
</BODY>
</HTML>
<?
}
/* -------------------------------------------------------------------------------- */
function ValidPass($sess_login,$sess_pass)
{
if (($sess_login === md5(trim($GLOBALS["LOGIN"]))) && ($sess_pass === md5(trim($GLOBALS["PASSWORD"]))))
{
ShowArea();
return array ($sess_login,$sess_pass);
}
else
{
error($GLOBALS["ERROR"]);
return;
}
}
/* -------------------------------------------------------------------------------- */
function ShowArea()
{
?>
<A HREF='?out'>Выход</A>
<BR>Тут инфа<BR>
<?
}
/* -------------------------------------------------------------------------------- */
function SendEmail($ip,$br,$ref,$access)
{
$Headers = "Content-Type: text/plain; charset=windows-1251\nFrom: nobody\n";
$Headers .= "X-Sender: <robot@".$GLOBALS["SERVER"].">\n";
$Headers .= "X-Mailer: PHP4\n";
$Headers .= "X-Priority: 1\n";
$Headers .= "Content-Type: text/plain; charset=windows-1251\n";
if ($access == 1)
$how_mach = " предпринята попытка ";
else
$how_mach = " неоднократные попытки ";
$Message = date("d.m.Yг. в G:i:s").$how_mach."несанкционированного доступа со стороннего сервера:\nip - ".$ip."\nбраузер - ".$br."\nreferer - ".$ref;
@mail($GLOBALS["MAIL"],
'Серьезные проблемы!',
$Message,
$Headers);
}
/* -------------------------------------------------------------------------------- */
function error($ERROR)
{
echo $ERROR;
}
?>
</BODY>
</HTML>
Костик писал(а):On-line сделал как то все сложно, достаточно в корень папки где лежат страницы положить .htaccess с авторизацией и всё
Вернуться в Прочие серверы и сетевые технологии
Сейчас этот форум просматривают: Google [Bot] и гости: 23