Heim >Datenbank >MySQL-Tutorial >Warum können ini_set(\'max_execution_time\') und set_time_limit() die Konfiguration auf einem Remote-Server nicht ändern?

Warum können ini_set(\'max_execution_time\') und set_time_limit() die Konfiguration auf einem Remote-Server nicht ändern?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-28 20:30:02992Durchsuche

Why do ini_set('max_execution_time') and set_time_limit() fail to change configuration on a remote server?

ini_set() und set_time_limit() ignorieren Konfigurationsänderungen auf dem Remote-Server

Bei Verwendung von ini_set('max_execution_time', 50) oder set_time_limit( 50) lokal gibt die Funktion ini_get('max_execution_time') wie erwartet 50 zurück. Auf einem anderen Server wird jedoch der Standardwert 30 wiedergegeben, wobei die angegebene Einstellung außer Acht gelassen wird.

Grund:

Die Unfähigkeit, die max_execution_time-Konfiguration mit ini_set() und zu ändern set_time_limit() ergibt sich aus dem Vorhandensein des abgesicherten Modus. Der abgesicherte Modus ist eine PHP-Konfiguration, die bestimmte Vorgänge einschränkt, einschließlich der Änderung von Laufzeiteinstellungen wie max_execution_time über ini_set().

Workaround:

Um dieses Problem zu umgehen, haben Sie zwei Optionen:

  • Abgesicherten Modus in der PHP-Konfiguration deaktivieren (aus Sicherheitsgründen nicht empfohlen).
  • Ändern Sie die Einstellung „max_execution_time“ direkt in der Konfigurationsdatei php.ini.

Zusätzlicher Hinweis:

Die gleiche Einschränkung gilt für die Funktion set_time_limit(), wie im PHP-Handbuch angegeben:

"Diese Funktion hat keine Wirkung, wenn PHP läuft im abgesicherten Modus. Es gibt keine andere Lösung, als den abgesicherten Modus auszuschalten oder das Zeitlimit in der php.ini zu ändern

Das obige ist der detaillierte Inhalt vonWarum können ini_set(\'max_execution_time\') und set_time_limit() die Konfiguration auf einem Remote-Server nicht ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn