ubuntuusers.de

Apache / PHP Timeout Problem

Status: Ungelöst | Ubuntu-Version: Server 10.04 (Lucid Lynx)
Antworten |

neinet

Avatar von neinet

Anmeldungsdatum:
23. Oktober 2008

Beiträge: 48

Moin beisammen ☺

ich bekomme hier in meinem Apache error.log immer wieder eine Fehlermeldung und entsprechend bricht auch die Scriptausführung ab ( PHP-Script fällt auf die Nase ):

PHP Fatal error:  Maximum execution time of 300 seconds exceeded in /var/www/*****.php on line 643, referer: http://*****.php

Mir sind nur zwei Parameter, zum setzen eines Script-Timeout bekannt, und beide sind korrigiert - ja, der Webserver wurde nach der Anpassung dieser beiden Werte neu gestartet 😉

php.ini:

max_execution_time = 6000

apache2.conf:

Timeout 6000

Ach und, ja, es muss so sein, dass hier ein ganz spezielles Script etwas mehr als eine Stunde laufen soll, das ist so gedacht ... naja, zumindest falls mir hier jemand helfen kann, denn mir gehen die Ideen aus ...

TheDarkRose

Avatar von TheDarkRose

Anmeldungsdatum:
28. Juli 2010

Beiträge: 3459

Bist du dir sicher, dass du dieses spezielle Script über den Browser aufrufen willst? Für sowas gibt es das Paket php5-cli, womit du das Script dann über die Shell aufrufst, welches auch keine execution time Begrenzung hat.

neinet

(Themenstarter)
Avatar von neinet

Anmeldungsdatum:
23. Oktober 2008

Beiträge: 48

Ja, ich bin mir sicher, dass ich das über den Browser aufrufen will ☺

Es handelt sich hier um ein Upload-Tool, welches ( absichtlich und gewollt ) sehr langsam entstehende ( automatisch generierte ) Files einliest und dann in eine Datenbank schiebt. Da für den User das ganze sichtbar dargestellt werden soll und auch aus einem Web-Frontend aufgerufen wird, muss das "leider" so sein.

xabbuh Team-Icon

Anmeldungsdatum:
25. Mai 2006

Beiträge: 6411

neinet schrieb:

php.ini:

max_execution_time = 6000

Welche php.ini hast Du bearbeitet? Hast Du mit phpinfo() geprüft, dass die Einstellungen auch tatsächlich übernommen wurden?

neinet

(Themenstarter)
Avatar von neinet

Anmeldungsdatum:
23. Oktober 2008

Beiträge: 48

japp, das hatte ich geprüft und da ist auch alles okay ... 6000 sekunden sind dort als gesetzt zu sehen

xabbuh Team-Icon

Anmeldungsdatum:
25. Mai 2006

Beiträge: 6411

Wird dann evtl. mit ini_set() oder set_time_limit() irgendwo im Skript die Zeit wieder verändert?

neinet

(Themenstarter)
Avatar von neinet

Anmeldungsdatum:
23. Oktober 2008

Beiträge: 48

schick ... da war ein setting in einer php include datei eines externen code-schnipsels, doch leider passierte auch nach einer änderung dort nichts, die fehlermeldung bleibt

ich hab' einmal sicherheitshalber das gesamte doc-root durchsucht, doch kein weiteres setting dieser art:

root@*****:/var/www/*****# grep -iR "ini_set" * |grep 300
root@*****:/var/www/*****#
root@*****:/var/www/*****# grep -iR "set_time_limit" * |grep 300
root@*****:/var/www/*****#

ich habe jetzt aber einfach einmal den safe_mode wieder eingeschaltet ( was ja default ist ), um weitere settings aus eventuellen configfiles zu verhindern und nun tut es ( bisher rennt das script seit gut 15min ). irgendwo muss somit noch ein limit durch den content gesetzt sein, hab' aber keine ahnung wo ich da noch suchen sollte.

Antworten |