Hallo, lieber Forumbenutzer. Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen Möglichkeiten der Kommunikation ist das Forum ein wenig eingeschlafen und weniger Nutzer benutzen das Forum aktiv (trotzdem lohnt es sich evtl. hier nach Lösungen zu suchen oder seine Frage zu stellen).

Wir empfehlen, für deine Fragen/Probleme aktuell (zusätzlich) Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: http://redaxo.org/slack/
sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Problem mit Content-Length im Header und Keep-Alive

11. Aug 2013, 23:44

Hallo!

Ich habe vor einiger Zeit schon festgestellt das auf meinem Server Redaxo unglaublich zäh läuft, da ich aber erst jetzt häufiger und intensiver mit Redaxo arbeite und die Entwicklungsgeschwindigkeit sehr wichtig ist habe ich das Problem genauer untersucht und wüsste nun gerne ob es sich tatsächlich um einen Fehler im Redaxo handeln kann.

Ich versuche einfach mal das hier so gut wie möglich aufzudröseln:

Symptom:
Sowohl im Front- als auch Backend brauchen Seiten ewig zu laden. Obwohl die PHP Skripte fehlerfrei laufen, und der Server keine nennenswerte Last hat.

Fehlersuche:
Betrachtet man die Ladezeiten der Seiten z.b. mit den Entwicklertools vom Chrome fällt auf, das die "Wartezeit" genau der Connection Keep-Alive Zeit entspricht die für den Webserver eingestellt ist. Der Webserver wartet also aus irgendeinem Grund mit dem fertigstellen der Seite bis der Timer abgelaufen ist. Meine erste Vermutung war das vieleicht ein schwerer Fehler im PHP einen der PHP Prozesse tötet und dadurch etwas hängen bleibt, dies konnte ich aber widerlegen, die Skripte laufen in jedem Fall durch. Allerdings habe ich herausgefunden das, wenn ein Skript einen Fehler enthält, dieses sofort lädt, ohne die Wartezeit.

Mögliche Diagnose:
Mit viel Hilfe von einem Bekannten habe ich das Problem weiter untersucht und wir glauben es jetzt soweit eingrenzen zu können das es eventuell am Redaxo selbst liegt. Und zwar ist im Header der Seiten jeweils "Content-Encoding: gzip" gesetzt sowie "Content-Length" mit einem bestimmten Wert. Dieser Wert ist allerdings nicht die Länge des gepackten Content sondern des unkomprimierten. Daher wartet der Browser auf weiteren Content obwohl der gepackte Inhalt schon längst komplett vorhanden ist und es kommt zum Timeout. Ein kurzes "grep -R Content-Length *" im Redaxo Ordner erweckt den Anschein als ob Redaxo die Content Länge selbst setzt (Daher auch das schnelle reagieren auf Skripte mit Fehlern, hier kommt Redaxo nicht dazu die Länge zu setzen und der Webserver übernimmt das).

Meine Frage ist nun: Klingt das soweit logisch? Ist das vieleicht ein bekanntes Problem und ich habe es nur nicht geschafft die Suche vernünftig zu benutzen? Kann man das schnell beheben?

Danke soweit! :)

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 00:03

Hi,

das klingt für mich eher nach einem Server-Problem.

Redaxo setzt die Content-Length erst, nachdem der Inhalt komprimiert wurde: https://github.com/redaxo/redaxo4/blob/ ... c.php#L168

Welche Redaxo-Version verwendest du?
Ist in der master.inc.php $REX['USE_GZIP'] gesetzt?
Gibt es mit der gleichen Installation auf anderen Servern Probleme?
LG,
Xong

Bild Määääääääääääääääääääääääh!

sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 09:40

Hi,

Da im Header der Seite immer gZip als Kompression angegeben war ging ich davon aus, das 'USE_GZIP' auch gesetzt war, allerdings war es das nicht ('false'). ??? Und, oh wunder, setze ich das auf 'true' klappt alles reibungslos. :/ Auf die Idee das es daran liegt war ich gar nicht gekommen...

Aber um die anderen Fragen noch zu beantworten:
- Redaxo Version 4.5
- Keine Probleme mit der gleichen Installation auf anderen Servern. Aber auch keine Probleme mit diversen anderen CMS System oder Blogsystemen auf dem gleichen Server.

Danke für die Hilfe :)

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 09:53

Hi,

du solltest mal nachschauen, ob mod_deflate aktiviert und richtig konfiguriert ist. Irgendwo muss das Content-Encoding ja gesetzt werden.

Mich würde auch mal interessieren, ob eine einfache HTML-Datei komprimiert ausgegeben wird.
LG,
Xong

Bild Määääääääääääääääääääääääh!

sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 13:46

Alle nicht-dynamischen Inhalte werden prompt ausgegeben, also ohne Verzögerung.

Wegen mod_deflate guck ich nachher mal.

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 16:02

Hey!
sebastianp hat geschrieben:Alle nicht-dynamischen Inhalte werden prompt ausgegeben, also ohne Verzögerung.
Das war ja nicht die Frage. ;)
LG,
Xong

Bild Määääääääääääääääääääääääh!

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: Problem mit Content-Length im Header und Keep-Alive

12. Aug 2013, 16:19

sebastianp hat geschrieben:Da im Header der Seite immer gZip als Kompression angegeben war ging ich davon aus, das 'USE_GZIP' auch gesetzt war, allerdings war es das nicht ('false'). ???
Sicher das dir da nicht irgendein .htaccess EIntrag reinspuckt?
vg, Jan

sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 01:01

Habs nochmal gecheckt, keine .htaccess Dinge in der Nähe der Redaxo Installation.

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 01:05

ich hatte so eine verzögerung auch mal bei einem kunden auf seinem server gehabt. nach einschalten von USE_GZIP lief plötzlich alles korrekt.

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 04:41

sebastianp hat geschrieben:Habs nochmal gecheckt, keine .htaccess Dinge in der Nähe der Redaxo Installation.
Check mal den zlib.output_compression Wert deines Hostings..
vg, Jan

sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 08:43

Also phpinfo() sagt mir folgendes:

zlib
ZLib Support enabled
Stream Wrapper compress.zlib://
Stream Filter zlib.inflate, zlib.deflate
Compiled Version 1.2.1.1
Linked Version 1.2.3.4

Directive Local Value Master Value
zlib.output_compression Off Off
zlib.output_compression_level -1 -1
zlib.output_handler no value no value

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 10:30

Voodoo.. pack doch mal n php testfile <?php echo 'test';?> in root deiner rex Installation, ruf das auf und kuck was die header sagen..
vg, Jan

sebastianp
Beiträge: 9
Registriert: 15. Mär 2013, 17:33

Re: Problem mit Content-Length im Header und Keep-Alive

13. Aug 2013, 11:08

Request header

Code: Alles auswählen

GET /dev/voodoo.php HTTP/1.1
Host: spike.twisted-artwork.de
Connection: keep-alive
Cache-Control: max-age=0
Authorization: Basic ??????????????????????? (entfernt vom autor ;) )
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Response header

Code: Alles auswählen

HTTP/1.1 200 OK
Date: Tue, 13 Aug 2013 09:07:18 GMT
Server: Apache/2.2.16 (Debian)
X-Powered-By: PHP/5.4.13-1~dotdeb.1
Vary: Accept-Encoding
Keep-Alive: timeout=3, max=100
Connection: Keep-Alive
Content-Length: 30
Content-Type: text/html
Content-Encoding: gzip

Ich hätte ja jetzt erwartet das es unkomprimiert ist .... 0o

Zurück zu „Sonstiges“