Piwik PDF Reports bei Hostpoint (mit FastCGI)

Seit 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:

// force download dialog
// 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.

3 Gedanken zu „Piwik PDF Reports bei Hostpoint (mit FastCGI)

  1. Pingback: Mehrere Content-Type in HTTP-Header « of bits and bytes

  2. Pingback: Piwik Version 1.0 erschienen « of bits and bytes

  3. Pingback: Hostpoint nun Piwik-kompatibel « of bits and bytes

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert