2010-10-19 21 views
6

¿Cuál es la mejor manera de realizar un seguimiento de las visitas a la página? Por ejemplo: SO tiene la cantidad de vistas que tiene una Pregunta, sin embargo, presionar actualizar no sube el conteo de las vistas.Cómo realizar un seguimiento de las visitas a la página

He leído que usar cookies es una forma bastante buena de hacerlo, pero no sé cómo se puede evitar.

Lo he buscado por todas partes y no puedo encontrar una buena respuesta para esto.

EDIT:

También veo que otra opción (una vez más, que podría ser muy mal) es el uso de Google Analytics API para obtener páginas vistas. ¿Es esto incluso una opción viable? ¿Cómo Stackoverflow, youtube y otros rastrean sus puntos de vista?

+0

¿Qué lenguaje de programación? ¿lado del servidor? ¿lado del cliente? ¿tercero? rodar el tuyo? –

+0

GA es una gran opción. O puede ejecutar informes en los registros de su servidor, como grep para cuántos GET son para index.html. – eSniff

+0

Estoy trabajando en un nuevo proyecto utilizando el framework yii (con el que no tengo mucha experiencia). – Booski

Respuesta

3

Puede rastrearlos en una base de datos si está haciendo los suyos propios. Cada vez que se carga una página, llama a un método que decidirá si sube las vistas de la página o no. Puede agregar los criterios que desee.

SI IP es única
o IP no ha visitado en 20 minutos basado en una sesión variable de
ETC
añadir luego un registro de visualización de la página

| ID | IPAddress | ViewDateTime | 
| 1 | 1.2.3.4 | Oct 18 ... | 

Sin embargo, las variables de sesión pueden recibir carga bastante intensivo en sitios con tantos visitantes como SO. Es posible que deba ser un poco más creativo.

Ahora, si no desea codificarlo, le sugiero que busque en SmarterStats ya que lee los registros de su servidor y es más robusto que los análisis.

nota: no estoy seguro acerca de un software similar Apache

0

Configuré una variable de sesión con la dirección que estoy revisando, luego la alterno si ha sido golpeada por ese navegador. En mi plantilla de página, compruebo la var de esa página y la manejo según corresponda.

0

A, hacky método simple:

Crear una tabla de MySQL local para el seguimiento:

CREATE TABLE pageviews ( pageview_count int(9) default NULL )

Entonces, en la página index.php, o donde sea que el usuario vaya a aterrizar, puede ejecutar una consulta de actualización en ese campo.

<php 
$link = mysql_connect('localhost','root',''); 
if (!$link) { 
    die('could not connect ' .mysql_error()); 
} 
$mysql = mysql_select_db($database_name,$link); 
$query = mysql_query('UPDATE pageviews set pageview_count = pageview_count + 1;'); 
mysql_close(); 
Cuestiones relacionadas