Просмотр полной версии : помогите найти ошибки в коде
переделал скрипт для логирования юзер агентов
написал условия что бы популярные браузеры не входили в лог, но со скриптом какие-то глюки
кроме того что надо он иногда дописывает непонятные данные
вот код скрипта
<?
if ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Firefox/2.0.0.14') ) { }
else
{
$name="Bot Name: ".$_SERVER['HTTP_USER_AGENT']."\n" ;
$via="".$_SERVER['REMOTE_HOST']."\n" ;
$ip="Bot IP: ".$_SERVER['HTTP_X_REAL_IP']."\n" ;
$ref="Bot Refer: ".$_SERVER['HTTP_REFERER']."\n" ;
}
$time=date("d-M-Y");
$op=fopen("log-$time.txt", "a");
fputs($op, $name);
fputs($op, $ip);
fputs($op, $ref);
fputs($op, $via);
fputs($op, $via);
fputs($op, $via);
fclose($op);
?>
он иногда дописывает непонятные данные
Наподобии?
лень мануалы почитать или google набрать?
http://omsk777.ru/all.php?act=broser
готово
объясняю вот строки из лога
нормальная запись
Bot Name: Yandex/1.01.001 (compatible; Win16; I)
Bot IP: 213.180.206.189
Bot Refer:
не нормальная запись
ForumsForums<a href="modules.php?name=Forums&file=modcp&mode=ip&p=89&t=40">Показать IP адрес автора</a>Forums90.151.17.
вот сам лог http://kabak.ds8.ru/log-30-Apr-2008.txt
переделал скрипт для логирования юзер агентов
написал условия что бы популярные браузеры не входили в лог, но со скриптом какие-то глюки
кроме того что надо он иногда дописывает непонятные данные
вот код скрипта
<?
if ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Firefox/2.0.0.14') ) { }
else
{
$name="Bot Name: ".$_SERVER['HTTP_USER_AGENT']."\n" ;
$via="".$_SERVER['REMOTE_HOST']."\n" ;
$ip="Bot IP: ".$_SERVER['HTTP_X_REAL_IP']."\n" ;
$ref="Bot Refer: ".$_SERVER['HTTP_REFERER']."\n" ;
$time=date("d-M-Y");
$op=fopen("log-$time.txt", "a");
fputs($op, $name);
fputs($op, $ip);
fputs($op, $ref);
fputs($op, $via);
fputs($op, $via);
fputs($op, $via);
fclose($op);
}
?>
Поменял место одной скобочки... проверь..
спасибо, осталось подождать приход ботов и посмотреть что будет в логе
Спасибо помогло
какую переменную надо использовать для определения домена пользователя
всмысле? откуда он пришел? или его айпишник?
в первом случае это $_SERVER['HTTP_REFERER'], во втором $_SERVER['REMOTE_ADDR']
все, сам добавил определение домена пользователя
<?
if ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') ) { }
elseif ( strstr($_SERVER['HTTP_USER_AGENT'], 'Firefox') ) { }
else
{
$name="Bot Name: ".$_SERVER['HTTP_USER_AGENT']."\n" ;
$via="".$_SERVER['REMOTE_HOST']."\n" ;
$predomen=gethostbyaddr( $_SERVER['HTTP_X_REAL_IP'] );
$domen="Bot Domen: ".$predomen."\n" ;
$ip="Bot IP: ".$_SERVER['HTTP_X_REAL_IP']."\n" ;
$ref="Bot Refer: ".$_SERVER['HTTP_REFERER']."\n" ;
$time=date("d-M-Y");
$op=fopen("log-$time.txt", "a");
fputs($op, $name);
fputs($op, $domen);
fputs($op, $ip);
fputs($op, $ref);
fputs($op, $via);
fputs($op, $via);
fputs($op, $via);
fclose($op);
}
?>
biophreak
01.05.2008, 23:20
Хм...в юзерагент можно подставить хтмл код, т.е. активная xss, получаеца
GreenBear
01.05.2008, 23:22
в тхт файле ?
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot