PHP max_execution_time
Die PHP max_execution_time ist eine Einstellung in der Konfigurationsdatei von PHP, die die maximale Ausführungszeit einer PHP-Skriptdatei auf einem Webserver festlegt. Wenn ein PHP-Skript auf einer Website ausgeführt wird, wird es vom Server ausgeführt, und es kann eine bestimmte Zeit dauern, bis das Skript vollständig ausgeführt ist. Die PHP max_execution_time-Einstellung stellt sicher, dass das Skript nicht zu lange ausgeführt wird und den Server nicht überlastet.
Die PHP max_execution_time wird in Sekunden angegeben. Wenn das Skript länger als die festgelegte Zeit ausgeführt wird, wird es abgebrochen, und es wird eine Fehlermeldung angezeigt, die besagt, dass das Skript aufgrund einer Überschreitung der maximalen Ausführungszeit abgebrochen wurde. Diese Einstellung ist wichtig, um sicherzustellen, dass die Ausführung von PHP-Skripten auf einem Server kontrolliert und optimiert wird, um den Server nicht zu überlasten.
Es gibt verschiedene Gründe, warum es notwendig ist, die PHP max_execution_time-Einstellung zu ändern. Hier sind einige der häufigsten Gründe:
- Große Datenmengen verarbeiten: Wenn ein PHP-Skript große Datenmengen verarbeiten muss, kann es länger dauern, bis das Skript vollständig ausgeführt ist. In diesem Fall muss die PHP max_execution_time erhöht werden, um sicherzustellen, dass das Skript vollständig ausgeführt wird.
- Komplexe Prozesse ausführen: Wenn ein PHP-Skript komplexe Prozesse ausführt, kann es länger dauern, bis das Skript vollständig ausgeführt ist. In diesem Fall muss die PHP max_execution_time erhöht werden, um sicherzustellen, dass das Skript vollständig ausgeführt wird.
- Vermeidung von Timeouts: Wenn ein PHP-Skript eine lange Zeit benötigt, um eine Anforderung zu verarbeiten, kann es zu einem Timeout kommen. Ein Timeout tritt auf, wenn der Client auf eine Antwort vom Server wartet, aber keine Antwort innerhalb der festgelegten Zeit erhält. Durch Erhöhung der PHP max_execution_time kann ein Timeout verhindert werden.
Es ist wichtig zu beachten, dass eine zu hohe PHP max_execution_time-Einstellung dazu führen kann, dass ein PHP-Skript zu lange ausgeführt wird und den Server überlastet. Daher sollte die Einstellung nur so hoch wie nötig sein, um sicherzustellen, dass das Skript vollständig ausgeführt wird, ohne den Server zu überlasten.
Insgesamt ist die PHP max_execution_time-Einstellung eine wichtige Einstellung, um die Ausführung von PHP-Skripten auf einem Server zu kontrollieren und zu optimieren. Eine optimale Einstellung trägt dazu bei, dass PHP-Skripte effizient und ohne Serverüberlastung ausgeführt werden.
Die richtige PHP max execution time für WordPress
Für WordPress ist es wichtig, dass die max_execution_time hoch genug ist, um die volle Funktionalität der Website sicherzustellen.
Die empfohlene max_execution_time für WordPress liegt bei mindestens 180 Sekunden (3 Minuten). Dies ist ein vernünftiger Wert, da WordPress, abhängig davon welche Plugins installiert sind, auch längerdauernde Aufgaben ausführen muss (Zum Beispiel Import oder Export von Daten, oder Cron-Jobs). Wenn die max_execution_time zu niedrig ist, kann es zu Problemen mit der Website kommen, wie beispielsweise unvollständige Seiten oder langsame Ladezeiten.
Es ist jedoch auch wichtig zu beachten, dass die empfohlene max_execution_time je nach Website und Server unterschiedlich sein kann. Wenn eine Website viele aufwändige Plugins oder komplexe Skripte verwendet, kann es erforderlich sein, die max_execution_time auf bis zu 300 Sekunden (5 Minuten) oder mehr zu erhöhen, um sicherzustellen, dass alles reibungslos funktioniert.
Es ist auch wichtig zu beachten, dass eine zu hohe max_execution_time zu Sicherheitsproblemen führen kann, da ein Angreifer potenziell bösartige Skripte ausführen und den Server überlasten könnte. Aus diesem Grund ist es wichtig, die max_execution_time mit Bedacht zu wählen und sie regelmäßig zu überwachen, um sicherzustellen, dass sie angemessen ist.
Zusammenfassend lässt sich sagen, dass die empfohlene max_execution_time für WordPress bei mindestens 180 Sekunden (3 Minuten) liegt, aber je nach Website und Server angepasst werden kann. Es ist wichtig, die max_execution_time mit Bedacht zu wählen und sie regelmäßig zu überwachen, um sicherzustellen, dass sie angemessen ist und die Website reibungslos funktioniert.
Wie erhöht man die PHP max execution time?
Es gibt verschiedene Möglichkeiten die max_execution_time zu erhöhen:
1. Verwenden von .htaccess
(nur für Apache)
Wenn Sie den Apache-Webserver verwenden, können Sie auch eine .htaccess
-Datei nutzen:
- Öffnen oder erstellen Sie die
.htaccess
-Datei im Hauptverzeichnis Ihrer Website. - Fügen Sie die folgende Zeile hinzu:
php_value max_execution_time 300
- Speichern Sie die Datei.
2. Direkt im PHP-Skript
Sie können auch die Funktion set_time_limit()
verwenden, um die maximale Ausführungszeit für ein einzelnes PHP-Skript festzulegen:
set_time_limit(300); // Setzt die max_execution_time auf 5 Minuten
Bitte beachten Sie, dass diese Methode nur für das aktuelle Skript gilt und die max_execution_time
nicht dauerhaft ändert.
3. Ändern in der php.ini-Datei
Mit dieser Methode kann man die Einstellung serverweit ändern, benötigt dafür aber auch root-Zugriff (Vollzugriff) auf den Server. Diese Methode ist daher nur geeignet, wenn einen eigenen Server betreibt.
- Lokalisieren Sie Ihre
php.ini
-Datei. Der Pfad zu dieser Datei kann je nach Ihrer Serverkonfiguration und Betriebssystem variieren. Auf vielen Linux-Systemen befindet sie sich beispielsweise im Ordner/etc/php/[VERSION]/cli/
oder/etc/php/[VERSION]/apache2/
. - Öffnen Sie die Datei mit einem Texteditor (z. B.
nano
odervi
unter Linux). - Suchen Sie nach der Direktive
max_execution_time
. Sie könnte so aussehen:
max_execution_time = 30
Der Standardwert ist in der Regel30
, was 30 Sekunden entspricht. - Ändern Sie den Wert auf die gewünschte Anzahl von Sekunden. Zum Beispiel:
max_execution_time = 300
Das erlaubt eine Ausführungszeit von 5 Minuten. - Speichern Sie die Datei und schließen Sie den Editor.
- Starten Sie den Webserver neu, um die Änderungen zu übernehmen. Wenn Sie beispielsweise Apache verwenden, können Sie ihn mit dem Befehl
sudo service apache2 restart
neu starten.
4. Ändern in der .user.ini
oder .php.ini
im Website-Verzeichnis:
- Navigieren Sie zu dem Hauptverzeichnis Ihrer Website.
- Erstellen Sie eine neue Datei namens
.user.ini
. Wenn Ihr Hosting-Provider die Verwendung von.php.ini
unterstützt, können Sie stattdessen diese Datei erstellen oder bearbeiten. - Fügen Sie der Datei die folgende Zeile hinzu:
max_execution_time = 300
Dies setzt die maximale Ausführungszeit auf 5 Minuten. - Speichern Sie die Datei.
- Warten Sie einige Minuten oder starten Sie den Webserver neu, wenn Sie dazu berechtigt sind. Einige Systeme erfordern möglicherweise eine kurze Wartezeit, bis die Änderungen wirksam werden, da die Einstellungen in Intervallen neu geladen werden.
Besonderheiten der .php.ini
- Der Name der Datei (
.user.ini
oder.php.ini
) und die Möglichkeit, lokale PHP-Einstellungen zu ändern, hängen vom Hosting-Provider und der spezifischen Serverkonfiguration ab. Wenn Sie unsicher sind, welchen Dateinamen Sie verwenden sollten oder ob diese Methode unterstützt wird, wenden Sie sich an Ihren Hosting-Provider. - In den meisten Fällen überschreiben die Einstellungen in der
.user.ini
oder.php.ini
-Datei im Website-Verzeichnis die globalen Einstellungen in der Haupt-php.ini
-Datei für diese spezielle Website oder das spezielle Verzeichnis, in dem sich die Datei befindet.
Hinweis
Es ist wichtig zu beachten, dass nicht alle Hosting-Provider es erlauben, diese Einstellungen zu ändern, insbesondere auf Shared-Hosting-Plattformen. Wenn Sie Schwierigkeiten haben oder die Änderungen nicht wirksam werden, sollten Sie sich an Ihren Hosting-Provider wenden.
Die max execution time bei webricks
Bei allen Hosting-Paketen haben wir die Einstellungen so gewählt, dass auch komplexe Seiten ohne Probleme funktionieren:
- WordPress Hosting Start: 180 Sekunden
- WordPress Hosting Business: 240 Sekunden
- WordPress Hosting Web Professional: 300 Sekunden
Kommentare
Fragen, Ideen oder Anregungen? Schreib uns was Du denkst!