Während des Sommers hat Piwik eine rasante Entwicklung durchzogen, welche am Samstag in der Version 1.0 resultierte.
Kleiner Wermutstropfen der häufigen Releases ist die damit einhergehende häufige manuelle Anpassung der TCPDF Bibliothek.
Piwik Version 1.0 erschienen
30. August 2010Mehrere Content-Type in HTTP-Header
16. August 2010Aufgrund der Probleme mit mehreren Content-Type-Elementen im HTTP-Header wollte ich wissen, was der Standard dazu meint.
Das Hypertext Transfer Protocol (HTTP) in der Version 1.1 ist im RFC 2616 beschrieben.
In Kapitel 4.2: Message Headers, letzter Abschnitt, ist allgemein zu mehreren Feldern mit dem selben Namen zu lesen:
Multiple message-header fields with the same field-name MAY be present in a message if and only if the entire field-value for that header field is defined as a comma-separated list [i.e., #(values)].
Als Beispiel schauen wir uns Kapitel 14.1: Accept an:
Accept = "Accept" ":"
#( media-range [ accept-params ] )
Nun schauen wir uns im Kapitel 14.17: Content-Type die Definition desselbigen an:
Content-Type = "Content-Type" ":" media-type
Nach dem Standard ist folglich die Aussage bei TCPDF falsch, es sei ein Bug von FastCGI. Es ist TCPDF, das sich nicht an den Standard hält.
Da die Browser aber damit zurecht kommen und auch bei anderen Anwendungen mehrere Content-Type Werte zurückgeliefert werden, wäre es für die Kunden von Web-Hostern hilfreich, wenn FastCGI etwas toleranter wäre.
Piwik PDF Reports bei Hostpoint (mit FastCGI)
15. August 2010Seit Version 0.7 können mit Piwik PDF Reports erzeugt werden. Als PDF-Bibliothek wird dabei TCPDF eingesetzt.
Bei Hostpoint erzeugt TCPDF aber Probleme. Beim Download des Reports wird folgender Fehler im ErrorLog angezeigt:
[error] [client ###.###.###.###] FastCGI: comm with server “/var/run/hcgi/86″ aborted: error parsing headers: duplicate header ‘Content-Type’, referer: http://###.######.##/index.php?module=PDFReports&action=index&idSite=2&period=day&date=yesterday
Der Fehler wird durch die TCPDF Bibliiothek ausgelöst, da sie mehrere Content-Type Header-Elemente erzeugt und FastCGI dies nicht unterstützt.
Um die Reports doch herunterladen zu können müssen in der Datei tcpdf.php die Zeilen 7221-7223 (bei der in Piwik 0.9 eingesetzten TCPDF Version 5.5.009) auskommentiert werden, so dass nur noch der Content-Type “application/download” ausgeliefert wird:
// header('Content-Type: application/force-download');
// header('Content-Type: application/octet-stream', false);
// header('Content-Type: application/download', false);
header('Content-Type: application/pdf', false);
Laut TCPDF ist dies ein FastCGI Bug. Mit diesem Hack ist es (zumindest mit Internet Explorer 8 und Firefox 3.6) möglich, den Report herunterzuladen, nach jedem Piwik Update muss aber der Eintrag wieder angepasst werden.
Desktop Tools für Piwik
19. Juni 2010Für den Zugriff auf Piwik habe ich noch zwei schöne Tools gefunden:
- Piwik Connector
Der Piwik Connector ist ein einfaches Tool, das die wichtigsten Zahlen und Grafiken darstellt, aber auch nicht mehr. Zudem ist die aktuelle Version (0.2 beta) auch seit fast 2 Jahren nicht mehr aktualisiert worden. - Desktop Web Analytics – For Piwik
Das zweite Tool dagegen liefert eine Vielzahl von Werten und Grafiken und wird zur Zeit aktiver weiterentwickelt.
Beiden Tools gemeinsam ist, dass sie gratis verfügbar sind und auf der Laufzeitumgebung Adobe AIR basieren.
Desktop Web Analytics benutzte ich auch um die Werte für den Artikel Google Analytics vs. Piwik vs. Advanced Web Statistics verwendet.
Ich empfehle, die Tools einmal anzuschauen.
Google Analytics vs. Piwik vs. Advanced Web Statistics
06. Juni 2010… oder “Traue keiner Statistik, die Du nicht selber gefälscht hast!”
Ich habe die Zugriffe auf meine Webseite und mein Blog mit Google Analytics zählen und analysieren lassen. Um die Daten nicht mehr der “Datenkrake” anzuvertrauen habe ich ich nach einer Alternative umgeschaut und bin mit Piwik fündig geworden.
Auf verschiedenen Webseiten wurden die Dienste auch schon verglichen, z.B. von Alexander Langer, bei hackthenet.de und Tobsolution.
Ich wollte die Daten über einen Monat mit beiden Diensten aufzeichnen lassen und dann die Resultate vergleichen, um zu schauen ob ich Piwik als Ersatz für Google Analytics einsetzen kann. Zudem wollte ich die Daten mit den Zahlen von Advanced Web Statistics vergleichen, die von Hostpoint für meine Seiten erfasst werden.
Hier die Daten der letzten zwei Monate (April und Mai 2010):
|
April 2010 |
Mai 2010 |
||||||
|
Kriterium |
AWStats |
Google Analytics |
Piwik |
AWStats |
Google Analytics |
Piwik |
|
|
Besucher |
1059 |
946 |
1003 |
1024 |
868 |
947 | |
|
Zugriffe |
13048 |
12383 |
|||||
|
Browser |
|||||||
|
Firefox |
8412 |
655 |
663 |
7114 |
561 |
583 |
|
|
IE |
3117 |
192 |
214 |
3450 |
186 |
218 |
|
|
Chrome |
478 |
41 |
40 |
531 |
47 |
48 |
|
|
Opera |
791 |
40 |
72 |
794 |
45 |
63 |
|
|
Safari |
151 |
13 |
13 |
308 |
22 |
22 |
|
|
Mozilla |
96 |
3 |
149 |
4 |
|||
|
SeaMonkey |
2 |
1 |
2 |
2 |
|||
|
Andere |
3 |
37 |
1 |
11 |
|||
|
Betriebssystem |
|||||||
|
Windows 7 |
3484 |
319 |
323 |
3194 |
264 |
276 |
|
|
Windows Vista |
1288 |
85 |
88 |
1367 |
97 |
97 |
|
|
Windows XP |
7001 |
463 |
513 |
6713 |
432 |
489 |
|
|
Windows 2000 |
175 |
8 |
7 |
94 |
4 |
4 |
|
|
Windows Server 2003 |
118 |
8 |
8 |
135 |
12 |
13 |
|
|
Linux |
642 |
41 |
43 |
462 |
34 |
33 |
|
|
MacOS |
265 |
20 |
20 |
295 |
21 |
21 |
|
|
Andere |
45 |
2 |
1 |
106 |
4 |
14 |
|
|
Auflösungen |
|||||||
|
1280×1024 |
244 |
282 |
221 |
260 |
|||
|
1680×1050 |
171 |
182 |
132 |
149 |
|||
|
1920×1080 |
138 |
140 |
102 |
105 |
|||
|
1920×1200 |
99 |
98 |
70 |
69 |
|||
|
1280×800 |
70 |
68 |
84 |
95 |
|||
|
1440×900 |
45 |
51 |
57 |
55 |
|||
|
1024×768 |
45 |
49 |
55 |
55 |
|||
|
1600×1200 |
37 |
33 |
38 |
45 |
|||
|
1366×768 |
16 |
15 |
17 |
10 |
|||
|
1400×1050 |
13 |
13 |
9 |
||||
|
… |
|||||||
|
Suchmaschinen |
|||||||
|
|
516 |
423 |
374 |
553 |
427 |
437 |
|
|
Bing |
1 |
1 |
|||||
|
Ecosia |
1 |
||||||
|
AllTheWeb |
1 |
1 |
1 |
||||
|
Yahoo! |
11 |
2 |
|||||
|
Swik |
7 |
11 |
|||||
|
Scroogle |
1 |
||||||
|
Yandex |
1 |
2 |
|||||
|
search |
4 |
||||||
|
Conduit.com |
2 |
||||||
|
ICQ |
2 |
||||||
|
Andere Unbek. |
9 |
||||||
Als Erstes fallen die stark unterschiedlichen Werte zwischen der statischen Methode (Advanced Web Statistics) und den dynamischen Methoden auf. Dies ist ganz stark auf die Methode zurückzuführen, da bei Google Analytics und Piwik nur die Seiten gezählt werden, die auch den entsprechenden Tracking-Code beinhalten. Advanced Web Statistics zählt zum Beispiel auch die Zugriffe auf die Administrations-Seiten des CMS, die durch die dynamischen Methoden nicht gezählt werden, da sie auch nicht relevant sind.
Advanced Web Statistics erfasst zudem die Browser pro Zugriff, das heisst es werden auch die Zugriffe auf die Bilder, CSS etc. in die Statistik miteinbezogen, was die stark unterschiedlichen Werte erklärt.
Wie schon andere (z.B. Fabian Letscher oder beim web.dev.blog) festgestellt haben, unterscheiden sich die Werte zwischen Google Analytics und Piwik teilweise stark voneinander. Während sich Unterschiede zwischen den Tagen noch mit unterschiedlichen Zeitzonen erklären lassen kann über die anderen Unterschiede nur spekuliert werden.
Möglicherweise werden nicht alle Search-Bots erkannt bzw. werden die Browser anders erkannt (andere Keywords in der Browser-Kennung). Was noch auffällig (wenn vielleicht auch nur zufällig) ist, sind die besseren Werte für Google Chrome gegenüber Opera bei Google Anlaytics, währenddessen bei Piwik (und im Verhältnis gerechnet auch bei Advanced Web Statistics) Opera bessere Werte erreicht. Ein Schelm, wer böses dabei denkt…
Was auch noch auffällt ist die starke Streuung der Suchmaschinen, welche als Quellen für die Besuche angegeben sind.
Fazit:
Die Verhältnisse zwischen den Werten (z.B. Browser-Verteilung, Auflösung etc.) sind bei den drei Statistiken in etwa gleich, was für mich die relevanteste Aussage ist. Welche Statistik nun “stimmt” kann nicht abschliessend geklärt werden, da die Berechnungskriterien nicht transparent sind. Das Google aber sowohl Browser als auch Statistik liefert hinterlässt aber mindestens ein Fragezeichen bei der “Wahrheit” der Statistik.
Slippery When Wet #3: IIS Certification Authority Cache
25. April 2010
I proudly present to you the third in a infinite number of posts of “Slippery When Wet.” In these posts I show you a little bastard I stumbled on.
For an Web Application I needed not only to check the user rights but also to limit the the allowed computers. For this I limited the access with a client certificate that has to be installed on the accessing computer.
At the beginning I used a free client certificate from Thawte, as the server certificate was also from them. This certificate was only valid for one year. So I had to renew this certificate every year and all allowed computers had to be updated.
But as Thawte ended their support for the free certificate I needed an other solution. I chose to use a self signed certificate as the client certificate but keep the server certificate from Thawte as on the server were also running other Web Applications that needed https.
So I created the Certification Authority (CA) certificate and a client certificate signed with this CA certificate with openssl. Testing with this certificates worked as it should. But for Testing purposes I used the default values for the validity length. So I created a new CA and a new client certificate with a longer validity period. After removing the testing certificates and installing the new created certificates I thought it will work as before, but the client certificate was not selectable in the client certificate selection dialog of internet explorer.
I tried several things like restarting IE, clearing the SSL cache and cursing. But nothing helped.
Analyzing the communication between client and server with openssl brought the solution: The Internet Information Server (IIS) was still using the old, already removed CA certificate, probably from his cache, but not the new one, maybe because the were named similar. After restarting the IIS on the server the new client certificate was selectable in the client certificate selection dialog of internet explorer.
Conclusion: After removing a (CA) Certificate from the IIS restart it to clear the cache!
Syntax Highlighting with Plugin
05. April 2010I’ve added today the plugin CodeColorer to provide syntax highlighting to the source code blocks in my blog. The plugin is based on the GeSHi – Generic Syntax Highlighter library.
The old articles have been updated to use the new plugin
Internet Explorer Standard Support Dokumentation
04. April 2010Kurz nachdem ich den Verweis auf den Artikel über die CSS-Unterschiede in den verschiedenen Internet Explorer Versionen publiziert hatte habe ich den Artikel bei heise online entdeckt, der auf die Dokumentation von Microsoft verweist. Diese dokumentiert unter anderem auch die verschiedenen Erweiterungen gegenüber den Standards bei CSS, JavaScript und DOM. Es empfiehlt sich, die PDF-Version der Artikel zu lesen, da in der HTML-Version jedes Unterkapitel auf einer einzelnen Seite dargestellt wird.
CSS Unterschiede der Internet Explorer Versionen 8, 7 und 6
28. März 2010Der Internet Explorer 9 steht zwar schon in den Startlöchern, aber die älteren Versionen 6 und 7 werden immer noch benutzt. So haben auf meiner Webseite die alten Versionen immer noch einen Anteil von 27% (IE7) bzw. 15% (IE6) aller Internet Explorer Zugriffe (Marktanteil auf meiner Seite: 16%; alle Angaben gemessen seit Anfang 2010).
Bei Smashing Magazine habe ich eine gute Übersicht der Unterschiede der letzten drei Internet Explorer Versionen gefunden (in Englisch). Diese Übersicht hat mir auch bei der Erstellung des ‘Bildbeschreibung über Bild anzeigen’-Effektes sehr geholfen.
My first SilverStripe-Website
03. März 2010Am 1. März wurde meine erste SilverStripe-basierte Website online geschaltet, die Website von Trescor Treuhand Kt. Schwyz AG. Dabei kam auch der ‘Bildbeschreibung über Bild anzeigen’-Effekt zum Einsatz.