suphp, memorylimit und Error 500

BlackPixel

New Member
Guten morgen Forum.

Seit Tagen schlage ich mich mit einem echt blöden Problem rum.

Serverconf:

Suse 9.3/Plesk 8.0/PHP 4.4.0/Apache2/suphp 0.6.2/ PHP als CGI/Typo3 4.0.3

Memory Limit 128M / safe_mode off / rg on

Ich versuche mittels pdf_generator2 aus einem html ein pdf zu machen. Folgendes passiert:

Ich rufe die seite auf, alles problemlos, werfe ich den pdf_generator an rechnet der Server je nach Seitenzahl einige sekunden. Danach bekomme ich einen Internal Server Error:

Code:
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Premature end of script headers: index.php
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/typo3temp/stylesheet_97d77affdf.css
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_979f3eb81d.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_1902be594f.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_f8fc8eb811.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_1ad7043b59.JPG.JPG
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_7218cb1349.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_4b029d80e1.JPG.JPG
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_6e61b8fd1d.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_8e626af1cf.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/uploads/RTEmagicC_285ab50ee5.jpg.jpg
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Fetching: http://www.dslr-seite.de/webcms/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/img/external_link_new_window.gif
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Status code:200
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Allowed memory size of 41943040 bytes exhausted (tried to allocate 72 bytes)

Man beachte letzte Zeile:
Code:
[Wed Mar 28 18:13:06 2007] [error] [client 88.64.144.242] Allowed memory size of 41943040 bytes exhausted (tried to allocate 72 bytes)
[/code]

Das sind doch 40MB ?

So, bekomme ich nun die Seite mit dem 500er angezeigt, und ich refreshe, bekomme ich SOFORT das PDF heruntergeladen. Da wird nix mehr gerechnet, das PDF ist da und ich kanns speichern. Was ist das?

Jemand ne Idee? Falls noch Angaben fehlen bitte sagen!

Danke und Gruss Manfred
 
Allowed memory size of 41943040 bytes exhausted (tried to allocate 72 bytes)
Dein von PHP zur Verfügung gestellter maximaler Speicher ist voll.
Erhöhe den Wert von "memory_limit" in der php.ini.

refreshe, bekomme ich SOFORT das PDF heruntergeladen.
Wahrscheinlich ist das PDF fertig und wurde gecached. Evtl. kommt der Speicherfehler genau zum Abschluß. :confused:

huschi.
 
Moin Huschi!

MOD: Full-Quote entfernt!

Ähm, ja, das schrieb ich ja das bei 40M der Fehler auftritt. Aber weshalb beendet sich php bei 40M wenn doch in der php.ini 128M angegeben ist?

Der Speicherfehler genau zum abschluss? Egal ob er nur 3 Zeilen ins PDF packen muss oder 3 DINA 4 Seiten? Eher unwahrscheinlich.

Die Grundlegende Frage ist doch, weshalb greift das MemoryLimit bei 40M... obwohl erst bei 128 schluss sein sollte?!

Danke für Deine Antwort!

Gruß Manfred
 
Last edited by a moderator:
Egal ob er nur 3 Zeilen ins PDF packen muss oder 3 DINA 4 Seiten? Eher unwahrscheinlich.
Nicht so unwahrscheinlich, wie Du vielleicht denkst.

weshalb greift das MemoryLimit bei 40M... obwohl erst bei 128 schluss sein sollte?!
Weil irgendwo nochmal 40MB festgelegt wurde.
Das steht relativ eindeutig in der Fehlermeldung: "Allowed memory size ... exhausted".
Hast Du die Angaben mit phpinfo() überprüft?

huschi.
 
MOD: Full-Quote entfernt!
Hui Huschi ;)

Aber klaro. Du kannst ja mal schauen:

phpinfo()

Ich hab php 4.4.0 vorgestern nochmal neu gebacken. hab dann suphp nochmal neu gebacken. Gleiches Drama.
Stelle ich den vhost auf Apache Handler um, läufts. Stelle ich ihn auf CGI um läufts nicht. die PHP Version sowie die SUPHP version spielen keine Rolle.

Habe es jetzt aktuell nochmal getestet:

Code:
[Fri Mar 30 11:54:31 2007] [error] [client 84.158.152.157] Fetching: http://www.dslr-seite.de/webcms/typo3temp/stylesheet_97d77affdf.css
[Fri Mar 30 11:54:31 2007] [error] [client 84.158.152.157] Status code:200
[Fri Mar 30 11:54:32 2007] [error] [client 84.158.152.157] Fetching: http://www.dslr-seite.de/webcms/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/img/external_link_new_window.gif
[Fri Mar 30 11:54:32 2007] [error] [client 84.158.152.157] Status code:200
[Fri Mar 30 11:54:33 2007] [error] [client 84.158.152.157] Allowed memory size of 41943040 bytes exhausted (tried to allocate 72 bytes)
[Fri Mar 30 11:54:33 2007] [error] [client 84.158.152.157] Premature end of script headers: index.php

Warum bei 40M??? Woher kommt das Limit? Son shieeet :D
 
Last edited by a moderator:
Mal ne kleine Gegenfrage: Wo stammen die Logeinträge her? Es ist nicht das typische Format einer access_log oder error_log.

huschi.
 
Back
Top