Ich bekomme immer wieder diesen PHP-Fehler:
Schwerwiegender Fehler: Maximale Ausführungszeit von 300 Sekunden überschritten
Ich habe versucht, meine max_execution_time
und meine max_input_time
Einstellungen in der php.ini (sowohl Apache als auch CLI) auf zu setzen0
, -1
und 4000
Sekunden jeweils.
Und ich bekomme immer noch die Fehlermeldung:
Schwerwiegender Fehler: Maximale Ausführungszeit von 300 Sekunden überschritten
Außerdem läuft mein Skript über 300 Sekunden, bevor ich diese Nachricht erhalte
Ich führe das Skript über die Befehlszeile aus.
Ich habe auch meine überprüft, phpinfo()
um zu sehen, welchephp.ini
ich verwende.
Noch interessanter habe ich versucht, Einstellung max_execution_time
und max_input_time
Einstellungen auf 5 Sekunden und mein Skript wird weit über 5 Sekunden laufen , bevor ich das bekommen:
Schwerwiegender Fehler: Maximale Ausführungszeit von 300 Sekunden überschritten
Antworten:
Am Anfang Ihres Skripts können Sie hinzufügen.
quelle
set_time_limit(0);
= gleich.Wenn Sie WAMP verwenden, gehen Sie zu:
Erhöhen Sie die
max_execution_time
inphp.ini
dann gehen Sie zuC:\wamp\apps\phpmyadmin3.4.10.1\libraries
(Ändern Sie den Pfad entsprechend Ihrer Installation)öffne
config.default.php
und ändere den Wert für$cfg['ExecTimeLimit']
auf 0:Dadurch wird das Problem bei PhpMyAdmin-Importen behoben.
quelle
config.default.php
Es geht sehr explizit darum, es nicht zu bearbeiten, und fordert unsconfig.inc.php
stattdessen auf , es zu bearbeiten . Ich habe versucht, es zu finden und konnte es nicht, also habe ich es mir selbst gemacht und hinzugefügt<?php $cfg['ExecTimeLimit'] = 3000; ?>
. Das hat nichts getan. Ich habe beschlossen, es zu versuchen und esconfig.default.php
hat funktioniert !! Wie sollen wir dieconfig.inc.php
Arbeit machen?!?Xampp-Benutzer
xampp\phpMyAdmin\
$cfg['ExecTimeLimit'] = 300;
$cfg['ExecTimeLimit'] = 0;
(oder einen größeren Wert)quelle
Ich bin auf eine ähnliche Situation gestoßen, und es stellt sich heraus, dass Codeigniter (das von mir verwendete PHP-Framework) tatsächlich ein eigenes Zeitlimit festlegt:
In system / core / Codeigniter.php, Zeile 106 in Version 2.1.3 wird Folgendes angezeigt:
Da es keine andere Möglichkeit gab, das Ändern der Kerndatei zu vermeiden, habe ich sie entfernt, um die Konfiguration über php.ini zu ermöglichen und die unendliche maximale Ausführungszeit für eine CLI-Anforderung anzugeben.
Ich empfehle jedoch, diese Änderung bei zukünftigen CI-Versions-Upgrades irgendwo aufzuzeichnen.
quelle
set_time_limit(0);
in diese Funktion einfügen . Sie müssen den Kern nicht ändern: Diese Anweisung setzt das Zeitlimit zurück, sodass Sie sich beim Ausführen dieser bestimmten Funktion keine Gedanken über andere Zeilen im Kern oder in anderen Paketen machen müssen.Versuchen Sie Folgendes in Ihrem Skript:
quelle
set_time_limit(0);
Lässt Ihr Skript für immer laufen.set_time_limit(0);
ermöglicht es Ihrem Skript, für immer ausgeführt zu werden.Das ist die richtige Antwort:
gehe zu
finden und einstellen
Starten Sie alle Dienste neu und fertig.
quelle
Gehen Sie zu xampp / phpmyadmin / library / config.default.php
und nehmen Sie die folgenden Änderungen vor
quelle
Für Xampp-Benutzer
quelle
Die Standardausführungszeit der PHP-CLI ist unendlich.
http://gr.php.net/manual/en/info.configuration.php#ini.max-execution-time
Überprüfen Sie, ob Sie PHP im abgesicherten Modus ausführen, da dabei alle Exec-Einstellungen ignoriert werden.
quelle
Für Local AppServ
Wechseln Sie zu C: \ AppServ \ www \ phpMyAdmin \ library \ config.default.php
Suchen Sie
$cfg['ExecTimeLimit']
den Wert und setzen Sie ihn auf 0.So wird es aussehen
quelle
WAMP-BENUTZER:
1) Gehen Sie zu C: \ wamp \ apps \ phpmyadmin
2) Öffnen Sie config.inc
3) Addiere $ cfg ['ExecTimeLimit'] = '3600'; in die Datei.
4) Speichern Sie die Datei und starten Sie den Server neu.
Diese Datei überschreibt die php.ini und wird für Sie arbeiten!
quelle
In meinem Fall habe ich MySQL-Front ausprobiert, als ich auf diesen Fehler in Phpmyadmin gestoßen bin und meine erfolgreich importiert .
Hinweis: Sie können weiterhin die unter dieser Frage bereitgestellten Lösungen verwenden, um Ihr Problem in Phpmyadmin zu lösen.
quelle
Wenn die obigen Antworten nicht funktionieren, versuchen Sie, Ihren Code zu überprüfen. Nach meiner Erfahrung führt eine Endlosschleife auch zu diesem Problem. Überprüfen Sie Ihre else if-Anweisung.
quelle
In Codeignitor Version 3.0.x enthält die Datei system / core / Codeigniter.php nicht die Zeitbeschränkung sowie das Einfügen
funktioniert nicht, da der Codeignitor dies mit seiner eigenen Funktion set_time_limit () überschreibt. Entweder müssen Sie diese Funktion aus dem Codeignitor löschen oder Sie können sie einfach einfügen
am Anfang der PHP-Datei, wenn Sie das auf 1000 Sekunden ändern möchten. Setzen Sie die Zeit auf 0 (Null), wenn Sie sie so lange ausführen möchten, wie Sie möchten.
quelle
Unter Xampp müssen Sie in php.ini entweder mysql.connect_timeout überprüfen. Ändern Sie es beispielsweise in:
Diese Zeit wird immer in Sekunden gezählt (also 1 Stunde in meinem Beispiel)
quelle
MAMP-BENUTZER, die php.ini bearbeiten, lösen dieses Problem - es gibt eine Zeile:
max_execution_time = 30; Maximale Ausführungszeit jedes Skripts in Sekunden
das Setzen auf einen höheren Wert hat funktioniert.
Die Datei befindet sich in php / php5.6.25 / conf / php.ini (offensichtlich müssen Sie die Datei für die von Ihnen verwendete PHP-Version nass machen - dies können Sie den MAMP-Einstellungen entnehmen.
quelle
Wenn Sie auf xampp sind und phpMyadmin zum Importieren großer SQL-Dateien verwenden und die maximale Ausführungszeit, das maximale Upload-Limit für Dateien und alles Notwendige erhöht haben. Wenn keine der oben genannten Antworten für Sie funktioniert, kommen Sie hierher
Wechseln Sie in Ihren xampp-Ordner. In meinem Fall ist hier der relative Pfad zu der Datei, die ich ändern muss: C: \ xampp \ phpMyAdmin \ library \ config.default.php
/** * maximum execution time in seconds (0 for no limit) * * @global integer $cfg['ExecTimeLimit'] * by defautlt 300 is the value * change it to 0 for unlimited * time is seconds * Line 709 for me */ $cfg['ExecTimeLimit'] = 0;
quelle
Sie können das Zeitlimit festlegen:
quelle