Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 04. Januar 2011 15:31

easysupport
Gast

[GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Hallo zusammen,

wollte gerade bei der cmsms Druckfunktion etwas an den Styles anpassen und bekomme beim Aufruf der Druckseite einen Content-Encoding-Fehler.

Meine Vermutung wäre, da ich in den letzten Tagen SEO und Speedoptimierung betrieben habe, dass es an der gzip-compression der Site liegt. Wenn das so sein sollte, wie kann ich dann die Auslieferung der Printseiten davon ausschließen?

Siehe Unterseiten auf www.urologie-bittrich-koch.de

#2 04. Januar 2011 16:25

easysupport
Gast

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

es liegt definitiv an der gzip compression. Hätte ich auch eher drauf kommen können neutral

compression ist jetzt wieder aus. Vielleicht finde ich ja noch eine Lösung um die Druckfunktion und gzip compression parallel einsetzen zu können.

Ideen und Vorschläge sind natürlich willkommen smile

#3 06. Januar 2011 13:30

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

easysupport schrieb:

wollte gerade bei der cmsms Druckfunktion etwas an den Styles anpassen

Was genau meinst du damit, die Stylesheets für das Print-Medium oder das Druck-Modul?

Offline

#4 06. Januar 2011 13:36

easysupport
Gast

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Hallo cyberman,

ich wollte die Printausgabe ändern, weil der Kunde einen speziellen Header haben wollte.
Problem war, dass diese gar nicht mehr funktionierte nachdem ich in der config.php die gzip Komprimierung aktiviert habe. Die Seite an sich funktioniert mit gzip gut nur bei klick auf den Printbutton kommt der Fehler.

Ich benutze das Standardmodul 'Druckfreundliche Seiten'.

#5 06. Januar 2011 13:46

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Und wie genau sieht der Fehler aus?

Offline

#6 06. Januar 2011 13:48

easysupport
Gast

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

ich hab mal die kompression aktiviert.

versuch mal die Seite mit dem Button zu drucken

#7 06. Januar 2011 13:56

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Hast du mal getestet, was da an Headern gesendet wird?

(z.Bsp. mit dem FF Plugin Live HTTP Headers)

Offline

#8 06. Januar 2011 14:08

easysupport
Gast

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

habs mal durchlaufen lassen. Hier das Ergebnis. Wenn ich das richtig sehe liefert der Server ein gzip zurück.

Vermute das die Printfunktion von Windows damit nichts anfangen kann, oder?

http://www.urologie-bittrich-koch.de/in … eturnid=62

GET /index.php?mact=Printing,cntnt01,output,0&cntnt01url=aHR0cDovL3d3dy51cm9sb2dpZS1iaXR0cmljaC1rb2NoLmRlL2luZGV4LnBocC9wcmF4aXMvbW90dG8%2Fc2hvd3RlbXBsYXRlPWZhbHNl&cntnt01pageid=62&cntnt01script=1&cntnt01returnid=62 HTTP/1.1
Host: www.urologie-bittrich-koch.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729; .NET4.0E)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://www.urologie-bittrich-koch.de/in … axis/motto
Cookie: CMSSESSID7a1faadb=98b20fcfb90fb504f3839ad611433378

HTTP/1.1 200 OK
Date: Thu, 06 Jan 2011 13:00:54 GMT
Server: Apache
X-Powered-By: PHP/5.2.14-0.dotdeb.0
Pragma: no-cache
Content-Encoding: gzip
Vary: Accept-Encoding
Cache-Control: no-cache, must-revalidate
Expires: Sat, 26 Jul 1997 05:00:00 GMT
Keep-Alive: timeout=2, max=500
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=utf-8

#9 06. Januar 2011 14:23

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Mit welchen Parametern rufst du das Druck-Modul auf?

Offline

#10 06. Januar 2011 14:27

easysupport
Gast

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Der Aufruf im Template lautet

{print showbutton=true script=true}

#11 25. November 2011 10:43

martin1660
probiert CMS/ms aus
Registriert: 03. Juli 2011
Beiträge: 21

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Das oben genannte Problem (n Content-Encoding-Fehler bei Aufruf der Druckseite) tritt bei mir jetzt auch auf, nachdem ich die gzip-Komprimierung aktiviert habe.
Ist inzwischen eine (Alternativ-)Lösung bekannt?

Offline

#12 25. November 2011 12:15

piratos
arbeitet mit CMS/ms
Registriert: 12. August 2011
Beiträge: 545

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Seit 1.10  hat man ja beim Print eine Änderung vorgenommen:

- Replace Printing with CMSPrinting

Bloss CMSPrinting hat einen gewaltigen Fehler und das bereits im Ansatz und das ist der hier:

// kill any output that may have happened already.
$handlers = ob_list_handlers(); 
for ($cnt = 0; $cnt < sizeof($handlers); $cnt++) { ob_end_clean(); }

Damit schiesst man alle ob_handlers ab, was beim Einsatz vom gzhandler aber zu solchen Problemen führt.

Unter Chrome z.B. gibt es dann solche Meldungen, andere Browser zeigen eine weiße Seite:

Diese Webseite ist nicht verfügbar.
Die Webseite unter http://localhost/cmsms110/index.php?mact=CMSPrinting,cntnt01,output,0&cntnt01url=aHR0cDovL2xvY2FsaG9zdC9jbXNtczExMC8%2Fc2hvd3RlbXBsYXRlPWZhbHNl&cntnt01pageid=15&cntnt01returnid=15 ist möglicherweise vorübergehend nicht verfügbar oder wurde dauerhaft an eine neue Webadresse verschoben.
Fehler 330 (net::ERR_CONTENT_DECODING_FAILED): Unbekannter Fehler.

Kommentiert man die Zeile

for ($cnt = 0; $cnt < sizeof($handlers); $cnt++) { ob_end_clean(); }

aus, verändert sich der Output, man erhält die ganze Seite, aber der Fehler ist weg.

Fazit:

Massiver Logikfehler in dem Bereich  wegen relativer Ahnungslosigkeit des Module - Schreibers.
Das hätte aber dem Schreiber beim Eigentest auffallen müssen, denn man hat ja nur 2 Optionen mit oder ohne Kompression und er killt gezielt diese Teile, muss sich also dessen bewusst gewesen sein.

Offline

#13 25. November 2011 12:32

piratos
arbeitet mit CMS/ms
Registriert: 12. August 2011
Beiträge: 545

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Eine Lösung wäre Änderung der index.php wie folgt:

$printer=isset($_REQUEST['mact']) && !stripos('CMSPrinting',$_REQUEST['mact']===false);
// optionally enable output compression (as long as debug mode isn't on)
if( isset($config['output_compression']) && ($config['output_compression']) && $config['debug'] != true  && !$printer)
  {
    @ob_start('ob_gzhandler');
  }
else
  {
    @ob_start();
  }

Offline

#14 25. November 2011 12:32

owr_web
Server-Pate
Registriert: 16. Dezember 2010
Beiträge: 543

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

martin1660 schrieb:

Ist inzwischen eine (Alternativ-)Lösung bekannt?

ja, und sie ist viel einfach als du denkst  - schmeiß einfach das Modul raus und machs ohne.

http://www.cmsmadesimple.de/forum/viewtopic.php?id=362

EDIT: Und wenn du einen Druckbutton willst, nichts einfacher als das:

<a href="javascript:window.print()">Hier das Bildchen oder einen Text rein</a>

Beitrag geändert von owr_web (25. November 2011 12:44)

Offline

#15 25. November 2011 14:25

martin1660
probiert CMS/ms aus
Registriert: 03. Juli 2011
Beiträge: 21

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Danke euch allen für die Antworten! Habe mich jetzt für die schlanke Javascript-Lösung entschieden.

Offline

#16 25. November 2011 17:32

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

owr_web schrieb:

ja, und sie ist viel einfach als du denkst  - schmeiß einfach das Modul raus und machs ohne.

http://www.cmsmadesimple.de/forum/viewtopic.php?id=362

Ab hier wird in dem von owr_web verlinkten Beitrag beschrieben wie du das Stylesheet für die direkte Druckvariante aufbauen musst:
http://www.cmsmadesimple.de/forum/viewt … 2895#p2895


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#17 26. November 2011 13:36

piratos
arbeitet mit CMS/ms
Registriert: 12. August 2011
Beiträge: 545

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Der Fehler ist übrigens bereits seit 1.9.3  bekannt und wurde im Bugtracker am 24.2.2011  gepostet:
http://dev.cmsmadesimple.org/bug/view/6161

Die Reaktion von calguy1000   8 Monate später:

Date: 2011-10-21 20:13
Posted By: Robert Campbell (calguy1000)

Output compression will be removed in CMSMS 1.11

Also da kann man nur mit dem Kopf schütteln , denn das führt zu einer weiteren Verringerung der Endperformance und - hat der wirklich so wenig Ahnung  oder ist das nur reine Bequemlichkeit ?

Die funktionierende Lösung ist doch wirklich nicht umwerfend um nicht zu sagen billig.

Offline

#18 26. November 2011 13:40

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

piratos schrieb:

Also da kann man nur mit dem Kopf schütteln

Verstehe ich auch nicht.
Das soll dann bestimmt wieder ein Modul übernehmen ...  roll


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#19 26. November 2011 20:42

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Druckfunktion liefert Content-Encoding-Fehler

Klingt für mich nach dem Weg des geringsten Widerstandes, um Fehlerquellen zu beseitigen, hatten wir mit e_strict und nun mit der output compression ...

Offline