У меня на форуме показывается все нормально и пишут гости, но вот единственное это никогда не показывается больше одного гостя. Специально даже проверяли, всеравно непоказывает. Подскажите в чем может быть проблема?
» Глюк с гостями: больше одного не показывает
может АйПи неправильно определяет для гостей
вот в статистику(кто в онлайн) и не пишет
вот в статистику(кто в онлайн) и не пишет
DimoN а где это посмотреть можно? И как подправить. Такой глюк не только у меня, еще и у Shurika модератора на этом форуме.
Скорее всего это везде так...
такая бага живет на отстойных хостингах, где неправильно пишутся переменные окружения.
Например на f2s в переменной $ENV{'REMOTE_ADDR'} всегда стоит 127.0.0.1
вот поэтому конфа считает, что все гости это один человек, ибо скрипт гостей по ип отличает, уникальный уин в куку гостям не пишется.
Лечится просто, нужно в икон либ в sub whosonline поменять $ENV{'REMOTE_ADDR'} на $ENV{'HTTP_X_FORWARDED_FOR'}
На f2s это проходит, если где то не пройдет, значит претензии к хостеру, или нужно тогда править конкретно скрипты (ставить гостям куку с уином, и проверять потом этот уин.
Например на f2s в переменной $ENV{'REMOTE_ADDR'} всегда стоит 127.0.0.1
вот поэтому конфа считает, что все гости это один человек, ибо скрипт гостей по ип отличает, уникальный уин в куку гостям не пишется.
Лечится просто, нужно в икон либ в sub whosonline поменять $ENV{'REMOTE_ADDR'} на $ENV{'HTTP_X_FORWARDED_FOR'}
На f2s это проходит, если где то не пройдет, значит претензии к хостеру, или нужно тогда править конкретно скрипты (ставить гостям куку с уином, и проверять потом этот уин.
batva хостинг у меня от валуехост, поменял я, но это всеравно не помогает Может можно еще чего-то сделать?
Potap
запусти этот скрипт у себя
Код:
#!/usr/bin/perl
use CGI qw(:cgi);
print header();
while (($key, $value)=each(%ENV)){
print"$key => $value<br>\n";
}
запусти этот скрипт у себя
Код:
#!/usr/bin/perl
use CGI qw(:cgi);
print header();
while (($key, $value)=each(%ENV)){
print"$key => $value<br>\n";
}
batva вот у меня такое выдается:
REMOTE_ADDR => 195.64.198.82
REMOTE_ADDR => 195.64.198.82
Potap
сейчас глянул код, и опешил.
я не знаю, но почему то там не юзается вообще идентификация гостей.
Поэтому в sub whosonline найди и замени строку
Код:
if ($tempusername eq "$ibtxt{'0043'}" || $userregistered eq "no") { $tempusername = "$ibtxt{'0043'}"; }
сейчас глянул код, и опешил.
я не знаю, но почему то там не юзается вообще идентификация гостей.
Поэтому в sub whosonline найди и замени строку
Код:
if ($tempusername eq "$ibtxt{'0043'}" || $userregistered eq "no") { $tempusername = "$ibtxt{'0043'}"; }
batva спасибо большое, теперь показываются и гости!
Что-то перестал он работать. Вроде все нормально было, а может показалось. В чем еще может быть проблема?
Potap
Цитата:
посмотри содержимое файла onlinedata.dat
прописывается ли там инфа, и ник гостя в виде Guest IP
Цитата:
В чем еще может быть проблема?
посмотри содержимое файла onlinedata.dat
прописывается ли там инфа, и ник гостя в виде Guest IP
batva нет там ип незаписывается, вот что пишется:
Guest |1007846026|Главная страница Конференции
Guest |1007846026|Главная страница Конференции
Potap
короче кинь линк на свой скрипт, так быстрее будет.
короче кинь линк на свой скрипт, так быстрее будет.
Помогите пожалуйста разобраться с этим глюком.
batva
А может неправильно отображаться из-за того что я менял пути куков, вот этот $query->url(-absolute=>1) заменил на этот /cgi-bin/ikonboard/ или это не влияет? Просто больше я вроде ничего не менял, а больше одного гостя никогда не показывается и в онлайн.дат не записывается ип гостя.
А может неправильно отображаться из-за того что я менял пути куков, вот этот $query->url(-absolute=>1) заменил на этот /cgi-bin/ikonboard/ или это не влияет? Просто больше я вроде ничего не менял, а больше одного гостя никогда не показывается и в онлайн.дат не записывается ип гостя.
вы будете смеятся у меня больше двух не отображается... а там по ИП проверяется? ой блин тада я не прав мыж через одно прокси лезем, сорри...
Я тут полазил в скриптах и заметил, что если переименовать Guest в любой другой ник, то тогда начинает отображаться много людей с добавкой ип. И глюк, который выскакивает с Гостем на многих форумах, он выскакивает из хака со статистикой потому что там свой перевод и написанно не Guest а Гость. Ну вот если допустим переименовать в ikonrussian.lib Guest на Гость, то на форуме будет отображаться правильное количество гостей, только они будут все как пользователи с никами Гость и добавкой его ип. Где это нужно подправить, подскажите.
у меня тоже валуй хост, но в iB3 все показвается нормально
Potap
Цитата:
вот смотри, ип адрес прибавится если $tempusername = "$ibtxt{'0043'}
теперь смотри что у тебя в иконрусиан.либ $ibtxt{'0043'}=Гость или Guest?
короче должно совпадать понимаешь, если ты гостей по английски обзываешь, значит и в иконрусиан тоже по английски пропиши и наоборот. И все должно заработать, просто обязано.
Цитата:
$tempusername = "$ibtxt{'0043'} $ipaddress" if ($tempusername eq "$ibtxt{'0043'}");
вот смотри, ип адрес прибавится если $tempusername = "$ibtxt{'0043'}
теперь смотри что у тебя в иконрусиан.либ $ibtxt{'0043'}=Гость или Guest?
короче должно совпадать понимаешь, если ты гостей по английски обзываешь, значит и в иконрусиан тоже по английски пропиши и наоборот. И все должно заработать, просто обязано.
batva везеде у меня пишется как Guest и в иконруссиан.либ тоже стоит Guest, проблема где-то в другом месте находится, потому что говорю, если переименовываю в другое имя, то все гости начиают опредилятся в это переименнованное+ип, и пишутся как мемберы. Вообщем в каком-то другом месте глюк.
batva помоги плиз разобраться с этим глюком. Мне кажется что ошибка где-то в скрипте онлайн.дат, потому что неправильно выдаются результаты и гости записываются без ип.
Potap
положи этот скрипт туда где конфа, и дай линк на него.э
Код:
#!/usr/bin/perl
print "Content-Type: text/html\n\n";
while (($key, $value)=each(%ENV)){
print"$key => $value<br>\n";
}
положи этот скрипт туда где конфа, и дай линк на него.э
Код:
#!/usr/bin/perl
print "Content-Type: text/html\n\n";
while (($key, $value)=each(%ENV)){
print"$key => $value<br>\n";
}
batva, у меня такая же проблема, плиз помоги исправить!
batva Вот выложил скрипт:
http://www.pbf.ru/cgi-bin/ikonboard/scr.cgi
Насколько я понимаю определяет-то он правильно, а вот выводит неправильно.
Потому что он как-то неправильно обрабатывает гостей, если стоит ник Guest для гостей, то он всегда показывает одного и ип незаписывает, а если сделать для гостей любое имя, то он их начинает писать как пользователей и к имени добавляет ип.
http://www.pbf.ru/cgi-bin/ikonboard/scr.cgi
Насколько я понимаю определяет-то он правильно, а вот выводит неправильно.
Потому что он как-то неправильно обрабатывает гостей, если стоит ник Guest для гостей, то он всегда показывает одного и ип незаписывает, а если сделать для гостей любое имя, то он их начинает писать как пользователей и к имени добавляет ип.
batva скажи пожалуйста, хоть в каком файле-то искать.
Potap
для того чтоб скрипт на рассмотрение дать - расширение нужно с *.cgi на *.txt поменять. Сам попробуй по своей ссылке скачать и посмотри внутрь...совсем не то что нада
Добавлено попозжее
извиняюсь, не досмотрел...
для того чтоб скрипт на рассмотрение дать - расширение нужно с *.cgi на *.txt поменять. Сам попробуй по своей ссылке скачать и посмотри внутрь...совсем не то что нада
Добавлено попозжее
извиняюсь, не досмотрел...
NecroHill дак понятно что нужно расширение сменить, для того что бы скрипт посмотреть. Но ведь ссылку где я выше давал, там выводит скрипт инфу, которую просил показать batva вот и стоит ссылка с расширением .cgi
Что больше никого чтоли не интересует этот глюк? Ведь наверника если бы все начали просить исправить этот баг, то ответ бу уже дали, а так врядли дождать можно будет...
Предыдущая тема: Баг с Яваскриптом (javascript) во всех версиях IkonBoard
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.