set_time_limit() funktioniert nicht (auf Testserver)
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
code
einlesen
einstellung
endlosschleife
ersten url
fehlermeldung
http
konsole
lang laufen
laufen
mode
problem
regelung
router
safe
sekunde
url
warnung
wichtigste problem
zeitlimit
-
Hi, ich habe mir auf meinem Ubuntu 10.04-System folgende Pakete installiert (kann sein, dass ich welche vergessen habe, die sind auf jeden Fall alle installiert), um einen Testserver zur Verfügung zu haben: apache2, php5, mysql-server, php5-mysql, libapache2-mod-php5, php5-cgi, php5-cli, php5-curl, php5-gd, php5-imagick, php5-imap, php-pear, php5-pgsql, php5-sqlite3.
Mittlerweile habe ich einige Probleme festgestellt:
1. .htaccess-Dateien scheinen nicht zu funktionieren
2. PHP-Scripts brechen bei Fehlern ab und geben keine Fehlermeldungen aus. Wenn ich Fehlermeldungen haben will, muss ich das Script in der Konsole laufen lassen.
3. Ich habe ein Script, in dem ganz oben
steht. Das muss auch so sein, d.h. ich will den Seitenaufbau sofort abbrechen, will aber, dass das Script weiter ausgeführt wird und zwar für 60 Sekunden. Das wird später auch noch mehr, weswegen diese Regelung dann Sinn machen wird. Aktuell soll das Script aber nur 60 Sekunden lang laufen. In dem Script ist eine Endlosschleife und in regelmäßigen Abständen soll das Script etwas tun.set_time_limit(60); ignore_user_abort(true);
Edit: Bitte nicht vorschlagen, LAMPP zu verwenden, denn damit hatte ich größere Probleme, weil es nicht alles, das ich brauche, unterstützt.
Und ja, natürlich ist mein Testserver nicht über das Internet erreichbar, das ist schon mit dem Router geregelt.
Edit2: In der php.ini steht
undmax_execution_time = 30
error_reporting = E_ALL & ~E_DEPRECATED
Edit3: Problem 2 ist vll. schon gelöst, denn ein paar Zeilen weiter steht
Komisch ist aber, dass darüberdisplay_errors = Off
Default Value: On
steht und ich jetzt das erste mal etwas in der php.ini ändere.
Edit4: Das Problem ist nicht gelöst. Wenn ich dort "On" schreibe, ändert sich nichts.
Edit5: Man, bin ich dämlich. Ich habe eine Einstellung geändert und die Konfigurationsdatei nicht neu einlesen lassen. Jetzt bekomme ich Fehlermeldungen gezeigt, das klappt also.
Beitrag zuletzt geändert: 2.8.2011 21:04:51 von das-koenigreich -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Danke. Dieses Problem ist damit nun auch gelöst. Jetzt bleibt nur noch das wichtigste Problem: Wieso funktioniert set_time_limit() nicht und wie stellt man ein, dass es funktioniert?
Wie gesagt: In der php.ini sind 30 Sekunden festgelegt und ich habe es mit 60 Sekunden getestet. Inzwischen habe ich es auch mit 10 Sekunden getestet und wieder läuft das Script ewig.
Edit: Ich habe set_time_limit() nun testweise auskommentiert und trotzdem läuft das Script ewig.
Beitrag zuletzt geändert: 3.8.2011 22:31:55 von das-koenigreich -
Wie mir mitgeteilt wurde, besteht das Problem weiterhin, wer also noch eine Idee hat, möge doch bitte noch was dazu schreiben.
-
Die Warnung in der Doku beachtet? -->
Diese Funktion hat keine Wirkung, wenn PHP im Safe Mode ausgeführt wird. Dies lässt sich nur umgehen, wenn man den Safe Mode deaktiviert oder das Zeitlimit bereits in der php.ini ändert.
http://de.php.net/manual/de/function.set-time-limit.php -
In der php.ini ist ein Zeitlimit gesetzt, weswegen es mich so wundert, dass das Script ewig läuft. Egal, ob ich set_time_limit() verwende, oder nicht. Übrigens ist der Save-Mode auf off.
Beitrag zuletzt geändert: 2.9.2011 22:16:43 von das-koenigreich -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage