AWStats für Server-Betreiber
Verfasst: 12 Jul 2010, 05:53
Moin,
diese Beschreibung ist nur für TVB-Server-Betreiber interessant!
Sie hätte auch in "Sonstiges" sein sollen ... allein, sobald ich angemeldet bin, darf ich die Nachrichten dort nicht mal lesen (erst recht nicht schreiben), obwohl ich sie unangemeldet lesen darf ???!!! Das scheint ein Bug in der Forums-Konfiguration/Software zu sein?
In einer (Sub) Domain betreibe ich einen TVB-Server. Andere Daten (bis auf ein par Bilder für Foren-Beiträge) werden in dieser Domain nicht gehostet. Ich werte die Zugriffe mit AWStats aus. Deshalb sind meine typischen "Browser" nicht Firefox usw., sondern eben TV-Browser.
AWStats handhabt aber den TV-Browser von Hause aus als ROBOT und dazu noch als einen potentiellen SPAM-Bot: "Java (Often spam bot)".
AWStats lässt sich aber konfigurieren, es hat z.B. eine lange Liste von bekanntenten Browsern in "lib/browsers.pm". Ich habe also zunächst den TV-Browser einfach dort hinzugefügt (die beiden Zeilen mit '+' am Anfang):
Überraschenderweise hat diese Änderung allein jedoch nicht zum Erfolg geführt. Nach Code-Inspektion wurde klar, dass AWStats ZUNÄCHST nach Robots sucht und erst DANN nach Browsern ... und in "lib/robots.pm" gibt es ganz am Ende einen CATCH-ALL für "java". Alle meine Versuche, den "java" CATCH-ALL zu erhalten, es sei denn, "tv-browser" ist im Präfix, sind gescheitert (ein PERL-Pattern mit lookbehind scheitert, weil in lookbehind nur Patterns mit fester Länge erlaubt sind). So musste ich den CATCH-ALL für "java" komplett entfernen (aus-kommentiert, siehe die Zeilen mit "-" bzw. "+" am Anfang):
Mit dieser Anpassung wird der TV-Browser nun als normaler Browser behandelt.
Allerdings betrifft diese Anpassung von AWStats ALLE virtuellen Hosts (bei mir), und ich bin deshalb nicht zufrieden! Ich habe aber bisher keinen Weg gefunden, die Sonderbehandlung von TV-Browser auf nur eine Domain zu beschränken.
AWStats kennt ja den TV-Browser nicht von Hause aus und kann deshalb auch keine Informationen zu den TVB-Versionen zeigen. Da ich daran aber interessiert bin, habe ich die "ExtraSections" von AWStats genutzt, um TVB Versionen, TVB Java Versionen und TVB Versionen, die nicht existierenden Dateien zugreifen, anzuzeigen. Diese "ExtraSections" sind Domain-spezifisch:
Falls Ihr Verbesserungen oder andere Lösungen habt: immer her damit.
LG, Georg aka deerwood
diese Beschreibung ist nur für TVB-Server-Betreiber interessant!
Sie hätte auch in "Sonstiges" sein sollen ... allein, sobald ich angemeldet bin, darf ich die Nachrichten dort nicht mal lesen (erst recht nicht schreiben), obwohl ich sie unangemeldet lesen darf ???!!! Das scheint ein Bug in der Forums-Konfiguration/Software zu sein?
In einer (Sub) Domain betreibe ich einen TVB-Server. Andere Daten (bis auf ein par Bilder für Foren-Beiträge) werden in dieser Domain nicht gehostet. Ich werte die Zugriffe mit AWStats aus. Deshalb sind meine typischen "Browser" nicht Firefox usw., sondern eben TV-Browser.
AWStats handhabt aber den TV-Browser von Hause aus als ROBOT und dazu noch als einen potentiellen SPAM-Bot: "Java (Often spam bot)".
AWStats lässt sich aber konfigurieren, es hat z.B. eine lange Liste von bekanntenten Browsern in "lib/browsers.pm". Ich habe also zunächst den TV-Browser einfach dort hinzugefügt (die beiden Zeilen mit '+' am Anfang):
Code: Alles auswählen
--- browsers.pm.ORIGINAL 2010-07-11 02:20:34.325823464 +0200
+++ browsers.pm.MY 2010-07-11 02:33:23.148822427 +0200
@@ -42,6 +42,7 @@
'lynx',
'omniweb',
'opera',
+'tv\-browser',
# Other standard web browsers
'22acidownload',
'aol\-iweng',
@@ -227,6 +228,7 @@
'lynx','Lynx',
'omniweb','OmniWeb',
'opera','Opera',
+'tv\-browser','TV-Browser',
# Other standard web browsers
'22acidownload','22AciDownload',
'aol\-iweng','AOL-Iweng',
Code: Alles auswählen
--- robots.pm.ORIGINAL 2010-07-11 02:20:47.788822941 +0200
+++ robots.pm.MY 2010-07-12 05:24:03.828821891 +0200
@@ -978,7 +978,7 @@
'ng\/1\.', # put at end to avoid false positive
'ng\/2\.', # put at end to avoid false positive
'exabot', # put at end to avoid false positive
-'java' # put at end to avoid false positive
+#'java' # put at end to avoid false positive
);
@RobotsSearchIDOrder_listgen = (
# Generic robot
@@ -1608,7 +1608,7 @@
'ng\/1\.','<a href="http://www.exabot.com/" title="Bot home page [new window]" target="_blank">NG 1.x (Exalead)</a>', # put at end to avoid false positive
'ng\/2\.','<a href="http://www.exabot.com/" title="Bot home page [new window]" target="_blank">NG 2.x (Exalead)</a>', # put at end to avoid false positive
'exabot','<a href="http://www.exabot.com/" title="Bot home page [new window]" target="_blank">Exabot</a>', # put at end to avoid false positive
-'java','<a href="http://www.projecthoneypot.org/harvester_useragents.php" title="Bot home page [new window]" target="_blank">Java (Often spam bot)</a>', # put at end to avoid false positive
+#'java','<a href="http://www.projecthoneypot.org/harvester_useragents.php" title="Bot home page [new window]" target="_blank">Java (Often spam bot)</a>', # put at end to avoid false positive
# Generic root ID
'robot', 'Unknown robot (identified by \'robot\')',
'crawl', 'Unknown robot (identified by \'crawl\')',
Allerdings betrifft diese Anpassung von AWStats ALLE virtuellen Hosts (bei mir), und ich bin deshalb nicht zufrieden! Ich habe aber bisher keinen Weg gefunden, die Sonderbehandlung von TV-Browser auf nur eine Domain zu beschränken.
AWStats kennt ja den TV-Browser nicht von Hause aus und kann deshalb auch keine Informationen zu den TVB-Versionen zeigen. Da ich daran aber interessiert bin, habe ich die "ExtraSections" von AWStats genutzt, um TVB Versionen, TVB Java Versionen und TVB Versionen, die nicht existierenden Dateien zugreifen, anzuzeigen. Diese "ExtraSections" sind Domain-spezifisch:
Code: Alles auswählen
--- awstats.example.com.conf.ORIGINAL 2010-07-11 02:36:23.980822257 +0200
+++ awstats.example.com.conf.MY 2010-07-12 03:51:44.152840816 +0200
@@ -1471,6 +1471,45 @@
#MinHitExtra1=1
+# TV-Browser
+ExtraSectionName1="TV-Browser Versions"
+ExtraSectionCodeFilter1="200 304"
+ExtraSectionCondition1="UA,TV-Browser"
+ExtraSectionFirstColumnTitle1="TVB Version"
+ExtraSectionFirstColumnValues1="UA,(TV-Browser [^J]*)"
+ExtraSectionFirstColumnFormat1="%s"
+ExtraSectionStatTypes1=PHBL
+ExtraSectionAddAverageRow1=0
+ExtraSectionAddSumRow1=1
+MaxNbOfExtra1=30
+MinHitExtra1=1
+
+ExtraSectionName2="TV-Browser Java Versions"
+ExtraSectionCodeFilter2="200 304"
+ExtraSectionCondition2="UA,TV-Browser"
+ExtraSectionFirstColumnTitle2="TVB Java Version"
+ExtraSectionFirstColumnValues2="UA,TV-Browser [^J]*(.*)$"
+ExtraSectionFirstColumnFormat2="%s"
+ExtraSectionStatTypes2=PHBL
+ExtraSectionAddAverageRow2=0
+ExtraSectionAddSumRow2=1
+MaxNbOfExtra2=30
+MinHitExtra2=1
+
+ExtraSectionName3="TV-Browser Versions producing 404 Errors"
+ExtraSectionCodeFilter3="404"
+ExtraSectionCondition3="UA,TV-Browser"
+ExtraSectionFirstColumnTitle3="TVB 404 Version"
+ExtraSectionFirstColumnValues3="UA,(TV-Browser [^J]*)"
+ExtraSectionFirstColumnFormat3="%s"
+ExtraSectionStatTypes3=PHBL
+ExtraSectionAddAverageRow3=0
+ExtraSectionAddSumRow3=1
+MaxNbOfExtra3=30
+MinHitExtra3=1
+
+
+
# There is also a global parameter ExtraTrackedRowsLimit that limits the
# number of possible rows an ExtraSection can report. This parameter is
# here to protect too much memory use when you make a bad setup in your
LG, Georg aka deerwood