>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> CrazyStat <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Dies ist die LiesMich-Datei zu CrazyStat, einem komfortablen, umfangreichen und kosten- losen Statistik-Script mit optionalem Counter. Vielen herzlichen Dank, dass Sie sich für CrazyStat entschieden haben. ****************************************************************************************** 0. Inhalt ****************************************************************************************** 0. Inhalt 1. Features 1.1 Statistik 1.2 Counter 2. Vorraussetzungen 2.1 Auf dem Server 2.2 Auf dem Client 3. Installation 3.1 Schnellinstallation 3.2 Ausführliche Erklärung: Installation mit Counter 3.3 Ausführliche Erklärung: Installation ohne Counter 3.4 Nach der Installation 4. Häufige Fragen (FAQ) 5. History 6. To do 7. Copyright und Lizenz ****************************************************************************************** 1. Features ****************************************************************************************** 1.1. Allgemein - kann ganz ohne JavaScript arbeiten (können nicht viele!) - keinerlei Pflichtwerbung/-logos oder ähnliches bei Counter lediglich Anmerkung im alt-Text - Da PHP-Script unabhängig von anderen Anbietern (Server down etc.) - Konfiguration der IP-Sperre möglich - Statistik und Counter in einem Script! - kein MySQL benötigt - kein Zugriff auf Server-Logs nötig - eingebundene Dateien bleiben XHTML oder HTML valide - eigene Seitenaufrufe werden auf Wunsch nicht gezählt 1.2. Statistik: - Ergebnisse werden alle auf einen Blick übersichtlich mit Balkendiagrammen (Browser, Monitorauflösung und Betriebssystem auch nach Wahl in Kreisdiagrammen) dargestellt - Auswertungen zu folgenden Daten, mit und ohne IP-Sperre sowie jeweils nach Wahl auf einen beschränkten Zeitraum gesehen oder auf die gesamte Zeit bezogen: - Gesamt-Hits - Hits diesen Monat - Hits letzten Monat - User online - Maximum Hits / Tag - Durchschnitt Hits / Tag - Hits / Wochentag - Hits / Monat - Hits / Tag - Hits / Stunde - Verwendete Browser - Aufgerufene Dateien - Verwendete Monitorauflösung - An der Monitorauflösung sieht man außerdem, wenn JavaScript nicht aktiviert ist - Farbtiefe - Verwendetes Betriebssystem - Referer - Suchbegriffe über die die User auf die Seite gekommen sind - Passwortschutz der den Zugriff auf die Statistik vor fremden Augen schützt möglich, mehrere Nutzer anlegbar, Passwort auf Wunsch verschlüsselt abspeicherbar, sichere Übertragung des Passworts - Downloaden der Statistik über die Oberfläche (Backup) - Tabellarische Anzeige der Logdateien - Durchsuchen der Logdateien (Filter) - Geschwindigkeitsoptimiertes Auslesen durch mehrstufiges Caching 1.3. Counter - Ein/ausschaltbar - Wenn Counter aus sieht der User nur eine Grafik, die Sie frei wählen können (z.B. blank.gif => Nutzer sieht gar nichts vom Script) - Design frei wählbar, es gibt hunderte passende kostenlose Grafiken im Internet - mit oder ohne IP-Sperre - Anzahl Stellen wählbar - Transparenz möglich, sodass das Design dem Hintergrund angepasst wird - Zum tatsächlichen Zählerstand lässt sich ein beliebiger Wert addieren, der z.B. mit einem anderen Counter gemessen wurde (Counterstand geht nicht verloren) - Auf Wunsch lässt sich an eine beliebige Position im Counter bei Reload ein beliebiger Text einblenden, der auf einen Reload hinweist. Das Aussehen des Textes (Schriftgröße, Farbe, nach Wunsch farbiger Kasten um den Text) ist beliebig wählbar. - Über CSS anpassbarer Textcounter ist ebenfalls möglich ****************************************************************************************** 2. Vorraussetzungen ****************************************************************************************** 2.1 Auf dem Server - PHP mit Sessions (4.2.2, 4.2.3, 4.3.4, 4.4.1, 5.0.4, 5.1.2, 5.2.6 wurden getestet), für Counter mit aktivierter GDLib (für gif-Support GDLib älter als 1.6 oder neuer als 2.0.28). Aus Sicherheitsgründen wird empfohlen register_globals = Off zu setzen (nicht zwingend). Läuft auch wenn safe_mode = On. - kein MySQL -> Das Script läuft auf so gut wie jedem PHP-fähigen Webspace, selbst auf Freehostern (Bei Seiten mit sehr hohem Besucheraufkommen ist ein "starker" Server empfehlenswert) 2.2 Auf dem Client - Browser (Internet Explorer 7/6/5.5, Mozilla 1.7, Opera 9.64/9.02/8.54/7.2/5, Firefox 3.0/2.0/1.5/1.0, Safari 3.2.1 (Win), Googe Chrome 1.0 und Netscape 4.78 (bedingt) wurden getestet) - Bilder (dürfen nicht geblockt werden, kein Textbrowser) - JavaScript für Ermittlung der Monitorauflösung und Farbtiefe und einige Funktionen für die Auswertung der Ergebnisse (in show_stat.php) ****************************************************************************************** 3. Installation ****************************************************************************************** !!!!!!! ACHTUNG! Informationen zum Updaten sind unter "Häufige Fragen" zu finden. !!!!!!! 3.1 Schnellinstallation (Schritte in Klammern nur bei Counter!) - Entpacken der Dateien auf die Festplatte (- Countergrafik auswählen/herunterladen (Designs und Seiten unter ) ( http://www.christosoft.de/Crazystat/Countergrafiken) ) (- Design in PNG umwandeln (oder gif, falls GDLib gifs unterstützt) (s. FAQ) und ) ( in Ordner "stat/countergrafiken" abspeichern ) - config.php öffnen und Einstellungen nach Wunsch anpassen (v.a. $config_rel_pfad) - Hochladen des Ordners "stat" (bzw. Ihr Name) - config_pass.php, dem Ordner logs, allen Dateien im Ordner logs, dem Ordner cache, allen Dateien im Ordner cache, allen Dateien im Ordner keywords und dem Ordner log-tool CHMOD 777 setzten (s. FAQ) - Auf jede Seite innerhalb des -Tags einfügen, eventuell Dateiendung nach ".php" ändern (manche Server unterstützen auch ".html" / ".htm"). Wie man CrazyStat in Dateien mit der Endung ".html" einbinden kann (nicht empfohlen) oder Dateien in unterschiedlichen Verzeichnissen einbindet, steht unter "Häufige Fragen". Wenn das CrazyStat-Verzeichnis nicht "stat" ist, müssen Sie dies im obigen Code anpassen. - Die Statistik aufrufen (http://www.meineseite.de/stat/). Falls Passwortschutz aktiv bitte das Passwort über "Passwort ändern" abändern. Die Default-Werte sind User "admin" und Passwort "pass". - fertig 3.2. Ausführliche Erklärung: Installation mit Counter - Entpacken Sie die ZIP-Datei in einen Ordner auf Ihrer Festplatte - Dann müssen Sie ein Design auswählen. Sie finden im Ordner "countergrafiken" einige. Unter http://www.christosoft.de sind weitere Countergrafiken, Seiten mit weiteren Grafiken und weitere Hinweise zu Countergrafiken zu finden. - Jetzt müssen Sie sicherstellen, dass die Countergrafik eine PNG- oder GIF-Datei ist. Sollte sie es nicht sein, oder Ihr Server keine GIF-Grafiken unterstützen, lesen Sie in den FAQ nach, wie man Grafiken in das PNG-Format konvertiert. - Öffnen Sie die Datei config.php in einem Texteditor und folgen den Anweisungen. - Laden Sie den Ordner "stat" (bzw. Ihr Name) auf Ihren Server hoch. - Jetzt nur noch dem Ordner "logs" (bzw. wie Sie ihn in config.php eingetragen haben), allen Dateien in "logs", dem Ordner "cache", allen Dateien im Ordner cache, dem Ordner "log-tool" und allen Dateien im Ordner "keywords" CHMOD 777 setzen. Wie das geht steht unter FAQ. - Jetzt auf jede Seite, auf die der Counter soll (und auf der Nutzerinfos gespeichert werden sollen) folgenden Code zwischen und einfügen: Wenn das CrazyStat-Verzeichnis nicht "stat" ist, müssen Sie dies im Code anpassen. Auf den meisten Servern muss die Dateiendung der Dateien, in die der Code eingefügt wurde ".php" sein, manche Server unterstützen aber auch ".html" oder ".htm". Wie man CrazyStat auf allen Servern in Dateien mit der Endung ".html" einbinden kann (nicht empfohlen) oder Dateien in unterschiedlichen Verzeichnissen einbindet, steht unter FAQ. - Die Statistik aufrufen (http://www.meineseite.de/stat/). Falls Passwortschutz aktiv bitte das Passwort über "Passwort ändern" abändern. Die Default-Werte sind User "admin" und Passwort "pass". - fertig 3.3 Ausführliche Erklärung: Installation ohne Counter - Entpacken Sie alle Dateien in einen Ordner auf Ihrer Festplatte - Öffnen Sie die Datei "config.php" in einem Texteditor und folgen den Anweisungen. - Nun laden Sie den Ordner "stat" (bzw. Ihr Name) auf Ihren Server hoch. - Jetzt nur noch dem Ordner "logs" (bzw. wie Sie ihn in config.php eingetragen haben), allen Dateien in "logs", dem Ordner "cache", allen Dateien im Ordner "cache", dem Ordner "log-tool" und allen Dateien im Ordner "keywords" CHMOD 777 setzen. Wie das geht steht unter FAQ. - Jetzt auf jede Seite, auf der Nutzerinfos gespeichert werden sollen folgenden Code zwischen und einfügen: Wenn das CrazyStat-Verzeichnis nicht "stat" ist, müssen Sie dies im Code anpassen. Auf den meisten Servern muss die Dateiendung der Dateien, in die der Code eingefügt wurde ".php" sein, manche Server unterstützen aber auch ".html" oder ".htm". Wie man CrazyStat auf allen Servern in Dateien mit der Endung ".html" einbinden kann (nicht empfohlen) oder Dateien in unterschiedlichen Verzeichnissen einbindet, steht unter FAQ. - Die Statistik aufrufen (http://www.meineseite.de/stat/). Falls Passwortschutz aktiv bitte das Passwort über "Passwort ändern" abändern. Die Default-Werte sind User "admin" und Passwort "pass". - fertig 3.4 Nach der Installation - Sie können Ihre Statistik über "http://ihrserver.de/stat/" aufrufen - Das Log-Tool erreichen Sie über "http://ihrserver.de/stat/log-tool/" (s. FAQ) ****************************************************************************************** 4. Häufige Fragen (FAQ) ****************************************************************************************** Tipp: Das Benutzen der Suchfunktion Ihres Editors ist hilfreich um hier fündig zu werden. (meist über [STRG] + [F] ) __________________________________________________________________________________________ Wie wandele ich eine (Counter-)Grafik ins PNG-Format um? Am einfachsten geht das auf folgender Seite: http://graphic2png.christosoft.de/ Alternativ können Sie das kostenlose Programm "IrfanView" (http://irfanview.de/) verwenden. Einfach die Grafik öffnen und Datei/Speichern unter klicken und PNG als Dateityp wählen. __________________________________________________________________________________________ Wie setze ich den CHMOD? Dies können Sie in Ihrem FTP-Programm. Dazu klicken Sie in der Regel mit der rechten Maustaste auf die Datei, und wählen "Aktionen/FTP-Befehle/CHMOD (Unix)" (WS_FTP Pro), "chmod (Unix)" (WS_FTP95), "Change file attributes/Commands/FTP-Commands/CHMOD (Unix)" (WS_FTP Pro Engl.), "Dateiattribute" (FileZilla) oder ähnlich. 777 entspricht vollen Rechten, also alle Häkchen angeklickt. Sollten Sie direkt auf dem Server unter Linux arbeiten, können Sie die Rechte mit dem Dateimanager, z.B. Konqueror, ändern. Dazu klicken Sie die Datei rechts an und wählen Eigenschaften und dann "Berechtigungen". Alternativ können Sie in der Shell (z.B. über ssh) den Befehl chmod verwenden (z.B. "chmod 777 config_pass.php" oder "chmod -R 777 logs". Siehe "man chmod"). __________________________________________________________________________________________ Wie update ich von Version 1.6x? LESEN SIE SICH DIESE ANLEITUNG ZUERST IN RUHE DURCH UND FÜHREN SIE DANN AUS. Schließen Sie vor dem Updaten die Statistik falls sie geöffnet ist (Ausloggen) und rufen Sie sie nicht auf, bevor Sie Schritt 7 erreichen. 1. Installieren Sie CrazyStat 1.63 in einem anderen Verzeichnis (z.B. "stat_"), setzen $config_rel_pfad aber auf das alte Verzeichnis (z.B. "stat"). 2. Kopieren Sie die config_pass.php aus dem alten in das neue Verzeichnis, falls sie existiert (bei CrazyStat >= 1.62) 3. Passen Sie die config.php im neuen Verzeichnis an (evtl. geänderte Einstellungen aus der alten übernehmen) 4. Kopieren Sie die Logdateien aus dem alten Verzeichnis (z.B. in stat/logs) in den logs-Ordner des neuen Verzeichnis (z.B. stat_/logs). 5. Optional, aber empfohlen: Rufen Sie das CrazyStat-Log-Tool im Browser auf (z.B. /stat_/log-tool/index.php). Belassen Sie alle Einstellungen auf den voreingestellten Werten. Die Logdateien werden dadurch komprimiert und Sie sparen erheblich Webspace. (s. FAQ) 6. Benennen Sie den alten Ordner um (z.B. in "stat_back"). Benennen Sie den neuen Ordner in den Namen des alten um (z.B. in "stat"). 7. Rufen Sie die Statistik im Browser auf (z.B. "stat/show_stat.php"). Falls Sie von CrazySat <1.62 updaten, wurde der User auf "admin" und das Passwort auf "pass" zurückgesetzt und kann jetzt beim Anmelden geändert werden. 8. Löschen Sie den alten Ordner (z.B. "stat_back"), wenn die Statistik problemlos funktioniert. __________________________________________________________________________________________ Wie update ich von Version 1.5x? LESEN SIE SICH DIESE ANLEITUNG ZUERST IN RUHE DURCH UND FÜHREN SIE DANN AUS. ES WIRD DRINGEND EMPFOHLEN, EIN BACKUP DES KOMPLETTEN STATISTIK-VERZEICHNIS SAMT LOGDATEI ZU MACHEN, BEVOR MAN UPDATED. Das Beispiel dient nur zum Verständnis, Sie können es überlesen. 1. CrazyStat 1.63 herunterladen und das Archiv auf die Festplatte entpacken. _______________________________________________________________________________ | | | Beispiel: | | | | Die neue Version wird nach "C:\CrazyStat" entpackt. CrazyStat liegt | | auf Ihrem Server im Ordner "stat/" | |_______________________________________________________________________________| 2. Laden Sie das Verzeichnis "log-tool" (aus dem Archiv) auf Ihren Server in das (alte) CrazyStat-Verzeichnis. Setzen Sie den CHMOD von "log-tool" auf 777. _______________________________________________________________________________ | | | Beispiel: | | | | Der Ordner"C:\CrazyStat\stat\log-tool" in den Ordner "stat/" | | auf dem Server hochgeladen, sodass er jetzt "stat/log-tool" ist. | | Der CHMOD von "stat/log-tool" wird auf 777 gesetzt. | |_______________________________________________________________________________| 3. Laden Sie die Datei "log_funcs.php" (aus dem Archiv) in das CrazyStat-Verzeichnis auf Ihrem Server. _______________________________________________________________________________ | | | Beispiel: | | | | "C:\CrazyStat\stat\log_funcs.php" wird nach "stat/" hochgeladen, | | sodass sie jetzt "stat/log_funcs.php" ist | |_______________________________________________________________________________| 4. Erstellen Sie einen Ordner "logs" und einen Ordner "cache" im CrazyStat-Verzeichnis auf dem Server und setzen den CHMOD von beiden auf 777. _______________________________________________________________________________ | | | Beispiel: | | | | Der Ordner "stat/logs/" und der Ordner "stat/cache/" wird erstellt und | | der CHMOD von beiden auf 777 gesetzt. | |_______________________________________________________________________________| 5. Rufen Sie das CrazyStat-Log-Tool auf (http://www.ihrserver.de/stat/log-tool/). Alle Einstellungen können auf dem Standard-Wert beibehalten werden, lediglich das Ausgangslogformat muss auf "1.5" umgestellt werden. Folgen Sie den Anweisungen solange, bis Sie "Fertig stellen" geklickt haben. Danach lesen Sie hier weiter und folgen den Anweisungen nicht mehr. Das Tool gibt Tipps zur Konfiguration. Notieren Sie sich diese (exakt). _______________________________________________________________________________ | | | Beispiel: | | | | Sie rufen "stat/log-tool/" auf und folgend den Anweisungen. | |_______________________________________________________________________________| 6. Öffnen Sie die neue Konfigurationsdatei config.php auf der Festplatte und passen sie an (eventuell den Einstellungen der alten Datei anpassen). Beachten Sie unbedingt die Tipps des Log-Tools. Es wird davon abgeraten, alte Config-Dateien zu erweitern. _______________________________________________________________________________ | | | Beispiel: | | | | Sie passen "C:\CrazyStat\stat\config.php" an. | |_______________________________________________________________________________| 7. Das komplette neue Statistik-Verzeichnis (nicht die Unterordner) von der Festplatte hochladen (über das alte drüber), bereits vorhandene Dateien ersetzen. Setzen Sie den CHMOD von "config_pass.php" auf 777. Ersetzen Sie dann den Ordner "extensions" auf den Server durch den Ordner "extensions" aus dem Archiv. Laden Sie den Ordner "keywords" auf den Server und setzen den CHMOD aller enthaltenen Dateien auf 777. _______________________________________________________________________________ | | | Beispiel: | | | | Sie laden alle Dateien (nicht Unterordner!) aus "C:\CrazyStat\stat" nach | | "stat/" auf dem Server. Setzen Sie den CHMOD von "stat/config_pass.php" | | auf 777. Sie löschen den Ordner "stat/extensions/" auf dem Server und laden | | den Ordner "C:\CrazyStat\stat\extensions" nach "stat/", sodass er jetzt | | "stat/extensions/" ist. Sie laden "C:\CrazyStat\stat\keywords" auf den | | Server sodass eer jetzt "stat/keywords" ist und setzen allen Dateien in | | diesem Ordner den CHMOD 777. | |_______________________________________________________________________________| 8. Rufen Sie "show_stat.php" auf. Sie erhalten eine Meldung, dass ein Counterfile angelegt wurde. Überprüfen Sie nun, ob die Statistik wie gewünscht funktioniert. Rufen Sie dazu eine Seite auf, auf der CrazyStat eingebunden ist, überprüfen Sie einen eventuelle Counter. Überprüfen Sie in show_stat.php, ob neue Aufrufe korrekt erfasst werden ("Alle aktualisieren" wählen). ACHTUNG! Die eigenen Aufrufe werden nicht gezählt, wenn beim Einloggen das ent- sprechende Häkchen aktiv war (-> ausloggen, Häkchen wegklicken, Einloggen). Wenn CrazyStat korrekt funktioniert, sollten Sie folgende Dateien vom Server löschen, falls vorhanden: log_tabelle.php log_text.php grey.gif graphic2png.php download.php stat.log index.html browser.txt robots.txt browser_wie_version1_52.txt _______________________________________________________________________________ | | | Beispiel: | | | | Sie rufen "stat/show_stat.php" mit dem Browser auf. Sie löschen | | "stat/log_tabelle.php", "stat/log_text.php", ..., falls vorhanden. | |_______________________________________________________________________________| 9. fertig __________________________________________________________________________________________ Wie kann ich Usernamen ändern, neue User anlegen oder Passwörter zurücksetzen? Oder: "Ich habe das Passwort vergessen" Die Zugangsdaten werden in der Datei config_pass.php abgelegt. Die Datei hat folgenden Aufbau: '1a1dc91c907325c69271ddf0c944bc72', ); ?> Die erste und die letzte Zeile der Datei sind fest. Dazwischen wird für jeden Nutzer eine Zeile angelegt. Zuerst steht der Nutzername in Anführungszeichen, dann => und dann das Passwort in Anführungszeichen. Dieses kann (wie hier) verschlüsselt als MD5 vorliegen (wenn $config_stat_passwort_md5=true). Danach folgt ein Komma. Um einen neuen User anzulegen, fügt man also eine weitere Zeile ein. Beispiel: '1a1dc91c907325c69271ddf0c944bc72', 'user2' => md5('passwort'), ); ?> Wenn $config_stat_passwort_md5=true ist, müssen alle Passwörter als verschlüsselter MD5 vorliegen. Um trotzdem möglichst einfach ein Passwort für einen neuen Nutzer angeben zu können, kann man das Passwort an die md5-Funktion übergeben, damit es verschlüsselt wird (s. Beispiel). Allerdings ist so das Passwort in der Datei im Klartext abgelegt und die Verschlüsselung ist zwecklos. Um die Sicherheit zu erhöhen, kann man nun show_stat.php aufrufen und mit "Passwort ändern" das gleiche (oder ein anderes) Passwort zuweisen. Dies wird dann automatisch verschlüsselt abgespeichert. ACHTUNG! Nach einer Änderung von config_pass.php sicherstellen, dass die Datei CHMOD 777 hat. __________________________________________________________________________________________ Wie kann ich die Statistik zurücksetzen? Löschen Sie einfach die Logdateien. Diese werden Standardmäßig im Ordner "logs" abgelegt (der Ordner ist über $config_logdatei_ordner anpassbar). Löschen Sie in diesem Ordner alle Dateien, bis auf die Datei ".htaccess", diese schützt Ihre Logdateien vor dem Zugriff von Fremden. Sollten Sie den "Default-File-Cache" verwenden, klicken Sie in der Statistik auf "Cache löschen" um den Cache zu leeren. __________________________________________________________________________________________ Was ist die Counter-Datei "counter.log"? Hierin speichert CrazyStat drei Werte (jeweils in einer Zeile): Position in der letzten Logdatei, ab der eventuell noch gesperrte IPs beginnen, Gesamt-Hits mit IP- Sperre, Gesamt-Hits ohne IP-Sperre (ohne $config_counter_zugeben). Diese Informationen nutzt CrazyStat um einen schnellen Counter umzusetzen, benötigt werden sie aber auch, wenn der Counter abgestellt ist. Sie können diese Daten mit Ihren Scripten selbst auslesen; für einen einfachen Textcounter wird der integrierte empfohlen. Diese Datei wird automatisch erstellt. Sollte der Wert nicht korrekt sein, wird er beim Auswerten der Statistik über show_stat.php berichtigt. Diese Datei zu backuppen ist kaum sinnvoll, da sie aus den Logdateien automatisch erstellt werden kann. Diese Datei wird immer im gleichen Verzeichnis wie die Logdateien angelegt, für das Verzeichnis müssen Schreibrechte vorliegen (CHMOD 777). __________________________________________________________________________________________ Das Laden der Statistik im Internet Explorer braucht extrem lange, erst nach einiger Zeit erscheinen die Ergebnisse. Oder: In anderen Browsern dauert das Laden des Moduls "Referer" sehr lange. Wenn das Laden im Internet Explorer sehr lange dauert, liegt das meist daran, dass der Interner Explorer die Tabelle mit den Ergebnissen erst anzeigt, wenn sie komplett geladen ist. Wenn z.B. viele Referer oder Dateien geladen werden müssen, kann dies extrem lange dauern. Besonders wenn das Plugin "mktree" für die Anzeige der Referer verwendet wird, müssen große Daten geladen werden bevor der Internet Explorer die Ergebnisse anzeigen kann. In diesem Fall empfiehlt es sich, das AjaxTree-Plugin zu verwenden. Zum Erzwingen von AjaxTree einfach $config_stat_tree="ajax" setzen. Alternativ $config_stat_referer_tree=false setzen, um die Baumansicht standardmäßig zu deaktivieren. __________________________________________________________________________________________ Was verändert $config_xhtml ? Wenn diese Einstellung true ist, wird CrazyStat nicht den JavaScript-Befehl "document.write" zur Einbindung verwenden, da dieser bei XHTML nicht mehr erlaubt ist. Stattdessen wird per "document.getElementById" bzw. "document.all" die Statistik eingebunden. Bitte beachten Sie, dass diese Art der Einbindung bei XHTML erlaubt ist, allerdings dazu führen kann, dass ältere Browser nicht erfasst werden. Damit ein Besucher erfasst wird, muss sein Browser bei dieser Einstellung folgendes können: - document.getElementById("id") oder document.all("id") - Den JavaScript-internen Eventhandler window.onload=Funktion; __________________________________________________________________________________________ Was ist anders am neuen Logformat 1.6 ? Das neue Logformat ist kompakter obwohl es nicht weniger Daten speichert. Dies bedeutet, dass z.B. nurnoch der Timestamp gespeichert wird und Datum/Uhrzeit bei der Auswertung daraus generiert werden. Dadurch wird die Logdatei um bis zu 20% kleiner. Außerdem unterstützt das neue Format "Kompression" (s. nächste Frage) wodurch 1.6-Logs nochmal um bis zu 50% kleiner werden. Die Auswertung der neuen Logdateien kann ein wenig länger dauern. Logdateien können mit dem CrazyStat-Log-Tool ins neue Format und zurück konvertiert werden __________________________________________________________________________________________ Was ist "Kompression"? "Kompression" ist ein Verfahren, dass es ermöglicht CrazyStat-Logdateien des 1.6-Formats um bis zu 50% kleiner zu machen, als sie unkomprimiert wären. Dazu werden die Daten, die in die Logdatei geschrieben werden sollen, mit den Daten der Zeile darüber verglichen. Falls die Daten identisch sind, wird anstatt der Daten ^ gespeichert. Falls die Zeile darüber keine Daten, sondern nur ^ enthällt, wird bis zur nächsten Datenzeile hochgegangen. Alle 10 Zeilen wird ein kompletter Datensatz geschrieben. Dadurch wird die Logdatei erheblich kleiner, allerdings dauert das Schreiben und Auswerten der Logdatei ein wenig länger. Wenn Sie sich für Kompression entscheiden, stellen Sie $config_log_shrink UND $config_log_shrinked auf true. Sollten Sie später keine Kompression mehr nutzen wollen, stellen Sie $config_log_shrink auf false und behalten $config_log_shrinked auf true. Damit werden neue Einträge nicht komprimiert, alte aber weiterhin korrekt ausgewertet. Um $config_log_shrinked auf false setzen zu können, darf die Logdatei keine komprimierten Einträge enthalten, dies können Sie mit dem CrazyStat-Log-Tool erreichen. ACHTUNG: Wenn Sie $config_log_shrink auf true setzen, könnten Daten in Racing Conditions (mehrere Besucher greifen exakt gleichzeig zu) durch Kompression verfälscht werden. Sie können um dies zu vermeiden Logdateien mit dem CrazyStat Log-Tool komprimieren, wobei die Daten nicht verfälscht werden können, und $config_log_shrink auf false und $config_log_shrinked auf true setzen. Neue Logdateien können Sie dann von Zeit zu Zeit wieder komprimieren. __________________________________________________________________________________________ Wie verwende ich das CrazyStat-Log-Tool? Es befindet sich im Ordner "log-tool". Wenn Sie CrazyStat 1.6x bereits auf einen Webserver hochgeladen haben, setzen Sie dem CHMOD des Ordners "log-tool" auf 777. Rufen Sie es dann auf (http://ihrserver.de/stat/log-tool/) und geben Sie die Zugangsdaten ein. Wenn Sie das Logtool allein ausführen möchten, verwenden Sie bitte die Standalone- Version, die es unter http://www.christosoft.de als Download gibt. __________________________________________________________________________________________ Was bedeutet "Seitenaufrufe dieses Computer nicht zählen"? Oder: Was bedeutet "Cookie" im Counter und wie schalte ich es ab? Wenn Sie sich einloggen und dieses Häkchen aktiviert haben, wird auf Ihrem PC ein Cookie gesetzt. Dies ist eine kleine Datei, die automatisch gelöscht wird falls Sie sich 30 Tage nicht mit dieser Option einloggen. Wenn Sie Ihre Seite aufrufen wird überprüft, ob diese Datei existiert. Tut sie das, wird Ihr Aufruf nicht in die Log-Datei geschrieben. Außerdem wird der Text "Cookie" (bzw. der in $config_counter_cookie_text eingestellte) im Counter eingeblendet. Die Eigenschaften des "Cookie"-Textes entsprechen denen des Reload-Textes, diese können in "config.php" angepasst werden. Um den Text auszublenden, einfach $config_counter_cookie_text auf false setzen. __________________________________________________________________________________________ Wie binde ich CrazyStat in Dateien ein, die nicht alle im selben Ordner liegen? --- 1. Möglichkeit: --- Sie setzen dazu in "config.php" folgende Einstellung: $config_mehrere_rel_pfade=true; Nehmen wir an, die Statistik liegt im Ordner "stat". Sie möchten sie jetzt in der Datei "Bild1.php" im Ordner "Bilder" und die Datei "index.php" im Stammverzeichnis einbinden. Dann sehen die Codes zum Einbinden der Statistik wie folgt aus: Bild1.php: index.php: In $set_rel_pfad wird also der relative Pfad von der Datei zur Statistik angegeben. Hier ist ein abschließender Slash erforderlich. Die Funktion include_once bekommt den relativen Pfad zur Datei "eintrag.php" im Statistik-Ordner übergeben. Bei Verwendung dieses Features möglichst in allen Dateien $set_rel_pfad festlegen. --- 2. Möglichkeit: --- Sie setzen $config_rel_pfad auf den Pfad von der Domain aus gesehen, beginnend mit einem Slash. Beispiel: "http://www.meineseite.de/stat/" -> $config_rel_pfad="/stat/". Diese Möglichkeit wird nicht empfohlen und funktioniert nicht immer. (Nicht wenn $config_xhtml=true und $config_counter_enabled=true) --- 3. Möglichkeit: --- Sie setzen $config_rel_pfad auf den absoluten Pfad (URI) zur Statistik, also z.B. "http://www.meineseite.de/stat/". Diese Möglichkeit wird nicht empfohlen und funktioniert nicht immer. (Nicht wenn $config_xhtml=true und $config_counter_enabled=true) __________________________________________________________________________________________ Wie kann ich den Counter nur auf bestimmten Seiten anzeigen lassen? Indem Sie folgenden Code auf der Seite verwenden, auf der der Counter angezeigt werden soll: Und folgenden Code auf der Seite, auf der er nicht angezeigt werden soll: __________________________________________________________________________________________ Wie kann ich auf unterschiedlichen Seiten unterschiediche Counterlayouts nutzen? Sie können die Countergrafik für jede Seite einzeln festlegen, indem Sie folgenden Code zum Einbinden verwenden: Die Countergrafiken müssen alle im selben Ordner liegen, der Dateiname muss oben im Beispiel natürlich angepasst werden. __________________________________________________________________________________________ Wie kann ich CrazyStat auf XHTML-Seiten im XHTML-Modus und auf HTML-Seiten im HTML-Modus einbinden? In welchem Modus CrazyStat eingebunden wird kann über $config_xhtml gestuert werden. Wenn diese Einstellung auf nicht auf alle Seiten zutrifft, kann per $set_xhtml der Modus vor dem Einbinden gesetzt werden. Beispiel: Auch $config_xhtml_noscript kann über $set_xhtml_noscript angepasst werden. __________________________________________________________________________________________ Der Counter war vor dem Aufrufen der Statistik noch höher als danach!? Der Counter wurde extrem beschleunigt, hat allerdings noch ein paar kleine Bugs; so zählt er manchmal obwohl er nicht sollte (sehr sehr selten). Beim Aufruf der Statistik wird der Counter berichtigt, da die Statistik das komplette Logfile auswertet ist sie im Gegensatz zum schnellen Counter fehlerfrei. __________________________________________________________________________________________ Der Counter war vor dem Updaten noch höher als danach!? Nach 1.60 RC3 werden Robots nicht mehr mitgezählt, s. "Wie blocke ich Robot XY?". In neuen Versionen wird die Liste der Robots erweitert, dadurch sinkt die "Besucherzahl" nach dem Update ein wenig. __________________________________________________________________________________________ Warum sehe ich die aktuellen Besucher nicht? Bei aktiviertem Cachen werden die Ergebnisse zwischengespeichert. Somit wird die Auswertungszeit verringert. Allerdings sind die Daten somit nicht mehr vollkommen aktuell. Um die aktuellen Daten zu sehen, klicken Sie auf "Alle aktualisieren" oder schalten das Cachen ganz ab, indem Sie $config_stat_cache auf false setzen. Nach dem Login sind die Daten stets aktuell. Das Verwenden von "Cache löschen" ist nicht nötig, um die aktuellen Besucher zu sehen, "Alle Aktualisieren" genügt. __________________________________________________________________________________________ Was bedeutet "Alle aktualisieren"? Damit werden die temporär gespeicherten Ergebnisse gelöscht, die CrazyStat beschleunigen. Diese Daten werden bei jedem Aufruf der Statistik angelegt und dann bis zum Ausloggen verwendet. Wenn kein Passwortschutz verwendet wird, werden diese Daten auch nach kurzer Zeit wieder gelöscht (Session-Daten). __________________________________________________________________________________________ Was bedeutet "Cache löschen"? Damit wird der "Default-File-Cache" gelöscht. Dieser Cache beschleunigt das Auswerten der Statistik mit Default-Einstellungen (wie sie direkt nach dem Einloggen sind) erheblich. Wenn Sie diesen Cache löschen muss die Statistik komplett neu ausgewertet werden, was eine Weile dauert. Eventuelle Fehler können durch das Löschen des Caches möglicherweise behoben werden. Außerdem müssen Sie nach Einstellungsänderungen den Cache löschen (siehe nächste Frage). __________________________________________________________________________________________ Ich habe in config.php Einstellungen geändert (z.B. die IP-sperre) oder browser.txt oder robots.txt verändert, aber die Ergebnisse ändern sich nicht!? Klicken Sie auf "Cache löschen". Die alten Ergebnisse sind noch im Cache, die Statistik muss erst mit den neuen Einstellungen ausgewertet werden (bei allen Einstellungs- änderungen, die die Auswertung beeinflussen). __________________________________________________________________________________________ Muss der Counter diesen blöden Link haben? Nein, setzen Sie $config_counter_link einfach auf false und er verschwindet. __________________________________________________________________________________________ Was sind extensions? Die Dateien im Ordner "extensions" sind JavaScript-Erweiterungen die den Bedien- komfort von CrazyStat erhöhen. Sie sind allerdings nicht notwendig, d.h. Sie können sie einfach löschen. "calendarpopup.js" ist für den Kalender zum Festlegen eines Zeitpunktes verantwortlich, "md5.js" ist für das verschlüsselte Übertragen von Pasworten zuständig. Die anderen Dateien werden für die Baumansicht der Referer benötigt. Es gibt keine Plugin-Schnittstelle oder ähnliches mit der Sie einfach Erweiterungen schreiben könnten. __________________________________________________________________________________________ Warum dauert die Auswertung der Statistik manchmal lange und manchmal kurz? Das liegt daran, dass CrazyStat auf Geschwindigkeit optimiert ist. So werden bei eingeschalteten IP-Sperren die meisten Zeilen gar nicht ausgewertet, bei eingeschaltetem Cachen werden nur die Module neu ausgewertet, deren Einstellungen verändert wurden. Somit braucht CrazyStat umso kürzer, je weniger Einstellungen verändert wurden (sofern die Statistik bereits ausgewertet wurde) und je mehr IP-Sperren angeschaltet sind. Des weiteren wertet CrazyStat mit Default-Einstellungen dank "Default-File-Cache" um einiges schneller aus als unter angepassten Einstellungen, also z.B. wenn eine IP-Sperre deaktiviert wurde oder ein Modul auf einen (anderen) Zeitraum beschränkt wurde. __________________________________________________________________________________________ Warum taucht unter "Dateien" ein Dateiname zweimal auf? Weil die eine Datei in einem anderen Ordner liegt, als die andere. Um rauszufinden in welchem, fahren Sie mit der Maus über den Dateinamen und warten einen Augenblick. Der volle Pfad der Datei erscheint. Sie können auch $config_stat_dateien_hide_dir=false setzen, sodass immer der volle Pfad angezeigt wird. __________________________________________________________________________________________ Wie viel Prozent sind es denn jetzt genau? Fahren Sie mit der Maus über das Balkendiagramm und Sie bekommen angezeigt, wie viel Prozent es genau sind. __________________________________________________________________________________________ Warum kennt CrazyStat Browser xyz nicht? Oder: Wie passe ich die Browsererkennung an? CrazyStat lassen sich leicht weitere Browser hinzufügen, entfernen oder ändern. Dazu gibt es die Datei browser.txt, die die Browsererkennung regelt. In jeder Zeile steht der "Erkennungsstring", den der Browser im "User Agent" ausgibt (z.B. "MSIE 6"). Soll der Browser in CrazyStat nicht unter seinem Erkennungsstring, sondern unter einem anderen Namen aufgelistet werden, kann man diesen Namen mit einem Gleichzeichen anfügen ("Erkennungsstring=Browsername"). Wenn Sie die neue Browsererkennung nicht mögen, können Sie einfach die Datei "browser.txt" löschen und die Datei "browser_wie_version1_52.txt" in "browser.txt" umbenennen. Die Datei "browser.txt" sollte CHMOD 777 (oder 644) haben. __________________________________________________________________________________________ Wie blocke ich Robot XY? Oder: Wie sehe ich, welche Robots auf meine Seite zugreifen? CrazyStat lassen sich leicht weitere Robots hinzufügen, entfernen oder ändern. Dazu gibt es die Datei robots.txt, die das Blockieren der Robots regelt. In jeder Zeile steht der "Erkennungsstring", der den Robot eindeutig im "User Agent" identifiziert. Sämtliche Zugriffe, bei denen der Erkennungsstring eines Robots im User-Agent vorkommt, werden nicht gezählt. Dies betrifft auch die Browsererkennung, hier tauchen Robots aus robots.txt nicht mehr auf. Um Robots mitzuzählen, leeren Sie einfach die Datei robots.txt. Die Robots aus robots.txt werden auch nicht vom Counter gezählt. Wenn Sie die Datei robots.txt ändern, wird der Counterstand nach dem Auswerten der Statistik über show_stat.php entsprechend den neuen Einstellungen angepasst. Die Datei "robots.txt" sollte CHMOD 777 (oder mind. 644) haben. __________________________________________________________________________________________ Wie passe ich die Auswertung "Hits/Suchbegriff" an? In der Datei keywords/queryregex.txt können reguläre Ausdrücke festgelegt werden, die die Auswertung der Suchbegriffe beeinflussen. Für jede Regex wird eine Zeile angelegt. Die Zeile beginnt mit der Regex (PCRE, von Trennzeichen (in der Regel /) eingeschlossen). Nach einem Tabstopp folgt eine Zahl, welche die Klammer angibt, welche den Suchbegriff umschließt. CrazyStat prüft zunächst, ob der reguläre Ausdruck "passt", wenn ja wird der Inhalt der angegebenen Klammer als Suchbegriff angenommen und gezählt. Beispiel: /q=([^&]*)&.*/ 1 Dieser Ausdruck wertet den Inhalt des Parameters q als Suchbegriff (für alle Seiten). Die Datei "queryregex.txt" sollte CHMOD 777 (oder 644) haben. __________________________________________________________________________________________ Wie binde ich CrazyStat 1.63 in HTML-Dateien ein? CrazyStat lässt sich auch in HTML-Dateien einbinden. Das hat den Vorteil, dass nicht die komplette Linkstruktur der Seite geändert werden muss. Dies kann bei großen Seiten entscheidend sein. Trotzdem wird diese Methode nicht empfohlen, da sich dieser Code von CrazyStat-Version zu CrazyStat-Version ändern wird, und somit bei einem Update in jeder Datei der Code geändert werden muss. Sollten Sie diese Methode trotzdem anwenden wollen, verwenden Sie folgenden Code und ersetzen PFAD durch den Pfad zur "stat.php" (in der Regel "stat"). Außerdem muss DATEI durch den Dateinamen ersetzt werden. __________________________________________________________________________________________ Wie binde ich CrazyStat 1.63 in XHTML-Dateien ein? Wenn Sie CrazyStat in XHTML-Dokumente einbinden möchten, können Sie folgenden (validen) Code verwenden (s. "Was verändert $config_xhtml?"). Ersetzen Sie PFAD durch den Pfad zur "stat.php" (in der Regel "stat"). Außerdem muss DATEI durch den Dateinamen ersetzt werden.  - - - By CrazyStat - - - __________________________________________________________________________________________ Was ist bei XHTML-Dateien zu beachten? Wenn Sie XHTML-Dateien verwenden, die mit korrektem Mime-Type (z.B. application/xhtml+xml) ausgeliefert werden, können folgende Probleme auftreten: Zum einen zeigt der Internet Explorer diese dann gar nicht an (unabhängig von CrazyStat), zum anderen werden Aufrufe von Gecko-Browsern (eventuell auch andere) von CrazyStat doppelt gezählt, da diese Browser auch die Grafik im