PHP-Fehler

Wenn deine Anwendung läuft, bemerkst du vielleicht PHP-Fehler in deinen Anwendungsprotokollen oder du möchtest sicherstellen, dass deine PHP-Skripte nicht unendlich lange laufen, weil die Anfragen unvollständig sind oder ins Stocken geraten. In diesem Artikel wird erklärt, wie du geeignete Timeout-Einstellungen und Speicherlimits konfigurierst, um die Stabilität, Sicherheit und optimale Leistung deiner Anwendung zu gewährleisten.

Speicherlimit

Das Standard-PHP-Speicherlimit bei Anwendungs-Hosting beträgt 128 MB für alle PHP-Versionen. Wenn deine Anwendung dieses Limit überschreitet, kann es sein, dass du in deinen Anwendungsprotokollen eine Fehlermeldung wie die folgende siehst:

Detected 1047468200 Bytes of RAM

PHP memory_limit ist 128M Bytes

Um das Speicherlimit für deine Anwendung zu erhöhen, erstelle eine .user.ini-Datei im Stammverzeichnis der Anwendung und füge die Einstellung für das Speicherlimit zu dieser Datei hinzu. Wenn du zum Beispiel das PHP-Speicherlimit auf 256 MB erhöhen möchtest, füge Folgendes hinzu:

memory_limit = 256M

Zeitüberschreitung beim Beenden von Anfragen erhöhen

Die Direktive request_terminate_timeout für den FastCGI Process Manager (FPM) legt die maximale Zeit fest, die ein PHP-Skript laufen kann, bevor es vom Webserver zwangsweise beendet wird, unabhängig davon, ob das Skript abgeschlossen wurde oder nicht.

Dies ist nützlich, um zu verhindern, dass PHP-Skripte unendlich lange laufen, was aufgrund von Programmierfehlern, Endlosschleifen oder zu langen Verarbeitungszeiten passieren kann. Durch die Einstellung von request_terminate_timeout kannst du verhindern, dass PHP-Prozesse übermäßig viele Serverressourcen verbrauchen und die Gesamtleistung und Stabilität des Servers beeinträchtigen.

So änderst du den Wert von request_terminate_timeout:

  1. Erstelle eine Datei mit dem Namen fpm_custom.conf im Hauptverzeichnis deines Repositorys und füge darin den gewünschten Wert ein, z. B. (Standardeinheit ist Sekunden):
  2. request_terminate_timeout = 120
  3. Pushe die Änderungen in dein Git-Repository.
  4. Wähle in MyKinsta deine Anwendung > Prozesse > bearbeite den Webprozess > aktualisiere den Start-Befehl um z. B. die Datei fpm_custom.conf einzubinden: heroku-php-apache2 -F fpm_custom.conf
War dieser Artikel hilfreich?