2010-10-19 12 views
6

Wie können Seitenaufrufe am besten verfolgt werden? Zum Beispiel: SO hat wie viele Ansichten eine Frage hat, aber das Auffrischen erhöht nicht die Anzahl der Aufrufe.So verfolgen Sie Seitenansichten

Ich habe gelesen, dass die Verwendung von Cookies ist eine ziemlich gute Möglichkeit, dies zu tun, aber ich bin ratlos, wie dies nicht aus der Hand geraten.

Ich habe überall gesucht und kann keine gute Antwort dafür finden.

EDIT:

Ich sehe auch, dass eine andere Option (wieder einmal konnte ich schrecklich falsch sein) ist Google Analytics API verwenden Seite Ansichten zu erhalten. Ist das überhaupt möglich? Wie verfolgen Stackoverflow, youtube und andere ihre Ansichten?

+0

welche Programmiersprache? Serverseite? Kundenseite? dritte Seite? Roll deinen eigenen? –

+0

GA ist eine gute Option. Oder Sie können Berichte über Ihre Serverprotokolle erstellen, wie z. B. grep, wie viele GETs für index.html verwendet werden. – eSniff

+0

Ich arbeite an einem neuen Projekt mit dem yii-Framework (mit dem ich nicht sehr viel Erfahrung habe). – Booski

Antwort

3

Sie können sie in einer Datenbank verfolgen, wenn Sie Ihre eigenen rollen. Jedes Mal, wenn eine Seite geladen wird, rufen Sie eine Methode auf, die entscheidet, ob die Seitenaufrufe aktualisiert werden sollen oder nicht. Sie können beliebige Kriterien hinzufügen, die Sie mögen.

IF IP einzigartig ist
OR IP hat nicht innerhalb von 20 Minuten auf der Basis einer variablen
ETC
fügen Sie dann eine Seite Eintrag anzeigen

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

jedoch Session-Variablen können ziemlich Last besucht bekommen intensiv auf Seiten mit so vielen Besuchern wie SO. Sie müssen möglicherweise ein bisschen kreativer werden.

Nun, wenn Sie es nicht codieren möchten, würde ich vorschlagen, in SmarterStats suchen, wie es Ihre Serverprotokolle liest und ist robuster als Analytik.

Anmerkung: Ich bin mir nicht sicher über eine ähnliche Software Apache

0

Ich setze eine Sitzungsvariable mit der Adresse, die ich überprüfe, dann kippe sie, wenn sie von diesem Browser getroffen wird. In meiner Seitenvorlage überprüfe ich dann die Variable für diese Seite und behandle sie entsprechend.

0

Eine einfache, hacky Methode:

für die Verfolgung von lokalen MySQL-Tabelle erstellen:

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

Dann Auf der Seite index.php oder wo auch immer der Benutzer landen wird, können Sie eine Aktualisierungsabfrage für dieses Feld ausführen.

<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(); 
Verwandte Themen