[Cascavel-pm] Contador Web de usuários OnLine
Gilmar Júnor
gilmarjr em im.ufba.br
Terça Junho 21 05:26:36 PDT 2005
Saudações, Monges!
Sou novo por aqui, e relativamente novo no mundo do Perl.
Acho que pegar o IP e o navegador não garante uma contagem confiável, pois:
- No caso de NAT e várias máquinas com a mesma configuração de software
apenas um registro seria feito.
- Se considerar o tempo então várias visitas do mesmo cliente serão
contabilizadas várias vezes
A solução apontada por Luis funciona nesses dois casos, mas é dependente
de cookies.
Qual o grande problema com eles? Há riscos de segurança?
Talvez se dados delicados precisarem ser gravados então seria melhor
gravá-los na sessão e mandar o cookie apenas com o ID. Ou sequer usar o
cookie, mas colocar o sessionID na queryString...
Quais outras informações o JavaScript poderia pegar para garantir uma
contagem confiável?
Uso um software de estatísticas chamado awstats[1], que faz analise de
logs e uma das informações que mostra é "visitantes únicos", talvez haja
uma resposta lá...
[1] http://awstats.sourceforge.net/
[]'s
Gilmar Júnior.
Gabriel Vieira escreveu:
> Grande Ednardo..
>
> Bom... creio que a melhor opção seria a criação de um único arquivo.
>
> Em cada linha estaria o log de um visitante... para maior precisão você
> poderia pegar os dados do visitante como IP e Navegador de preferencia a
> partir desses dados criar uma 'quase sessão' codificando ambos com md5.
>
> Exemplo:
>
> ip+navegador|time
> ip+navegador|time
> ip+navegador|time
> ip+navegador|time
>
>
> assim evitaria a utilização de cookies que gera qualquer imprevisto. Mas se
> for 'arriscar' (creio que utilizar cookies eh arriscar) você poderia pegar +
> informações através de um java script e repassar ao script a ser executado.
>
> Será? ;)
>
> Abraços!
> ----- Original Message -----
> From: "Ednardo Lobo" <ednardo em elobo.cjb.net>
> To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
> Sent: Monday, June 20, 2005 10:06 PM
> Subject: [Cascavel-pm] Contador Web de usuários OnLine
>
>
> Olá Monges,
>
> Estou com problema, cuja a solução não acho ...
>
> Há algum tempo escrevi um script Perl para contabilizar a quantidade
> de usuários on-line em websites e apresentar esse valor no próprio site.
>
> A estratégia utilizada é capturar o endereço IP dos visitantes
> ($ENV{REMOTE_ADDR}) e criar para cada diferente IP um arquivo cujo o
> nome é o próprio IP. O arquivo é recriado sempre que um novo acesso de
> mesmo IP é feito e removido quando um certo "life time" é atingido. Para
> contabilizar a quantidade de usuários on-line, é necessário apenas
> contar a quantidade de arquivos existentes no diretório onde são
> criados.
>
> O problema com está estratégia, é que se acessos estiverem sendo
> feitos de uma rede local atrás de um NAT, será contabilizado um único
> acesso para todas as máquinas.
>
> Alguém conhece alguma outra estratégia que não seja falha nesta
> situação específica?
>
>
> Grato,
>
Mais detalhes sobre a lista de discussão Cascavel-pm