переделал скрипт для логирования юзер агентов написал условия что бы популярные браузеры не входили в лог, но со скриптом какие-то глюки кроме того что надо он иногда дописывает непонятные данные вот код скрипта PHP: <? 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); ?>
объясняю вот строки из лога нормальная запись 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
всмысле? откуда он пришел? или его айпишник? в первом случае это $_SERVER['HTTP_REFERER'], во втором $_SERVER['REMOTE_ADDR']
все, сам добавил определение домена пользователя PHP: <? 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); } ?>