Heim  >  Artikel  >  Backend-Entwicklung  >  Was soll ich tun, wenn die Nginx-PHP-Datei keine Ausführungszeit benötigt?

Was soll ich tun, wenn die Nginx-PHP-Datei keine Ausführungszeit benötigt?

PHPz
PHPzOriginal
2023-03-29 11:33:53517Durchsuche

Nginx ist eine leistungsstarke Webserversoftware mit hoher Parallelität, und PHP ist eine gängige Entwicklungssprache, die von Nginx verwendet werden kann. Bei der Verwendung von Nginx kann jedoch das Problem auftreten, dass PHP-Dateien nicht ausgeführt werden. Dies wird normalerweise durch eine Zeitüberschreitung der PHP-Ausführung verursacht. In diesem Artikel erfahren Sie, wie Sie dieses Problem lösen können, indem Sie die PHP-Ausführungszeit in Nginx festlegen.

Schritt 1: Sehen Sie sich die aktuellen PHP-Ausführungszeiteinstellungen an

Bevor Sie mit der Anpassung der PHP-Ausführungszeit von Nginx beginnen, müssen Sie die aktuellen Einstellungen verstehen. Sie können die aktuelle PHP-Ausführungszeiteinstellung überprüfen, indem Sie den folgenden Befehl ausführen:

php -i | grep "max_execution_time"

Dadurch wird das aktuelle PHP-Ausführungszeitlimit ausgegeben. Standardmäßig ist sie auf 30 Sekunden eingestellt.

Schritt 2: Ändern Sie die PHP-Ausführungszeiteinstellungen in Nginx

Um die PHP-Ausführungszeiteinstellungen in Nginx zu ändern, müssen Sie die Nginx-Website-Konfigurationsdatei bearbeiten. In diesem Beispiel gehen wir davon aus, dass sich Ihre Nginx-Website-Konfigurationsdatei im Verzeichnis /etc/nginx/sites-available/ befindet und sie example.com heißt.

Öffnen Sie die Datei example.com und suchen Sie den folgenden Code:

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

In diesem Codeblock müssen Sie die Direktive fastcgi_read_timeout hinzufügen. Mit dieser Direktive wird die Ausführungszeit des PHP-Skripts in Sekunden festgelegt.

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    fastcgi_read_timeout 300; # 5 minutes
}

In diesem Beispiel verlängern wir die PHP-Ausführungszeit auf 5 Minuten.

Schritt 3: Nginx-Konfiguration neu laden und testen

Sie haben die PHP-Ausführungszeiteinstellungen in Nginx geändert. Jetzt müssen Sie die Nginx-Konfigurationsdatei neu laden, damit die Änderungen wirksam werden.

sudo systemctl reload nginx

Als nächstes können Sie testen, ob die PHP-Ausführungszeit erfolgreich geändert wurde. Sie können dies testen, indem Sie ein einfaches PHP-Skript erstellen.

<?php
sleep(300); # sleep for 5 minutes
echo "Hello World!";
?>

Speichern Sie den obigen Code als test.php und laden Sie ihn in das Webverzeichnis auf Ihrem Nginx-Server hoch. Jetzt können Sie in Ihrem Webbrowser auf die Datei zugreifen und 5 Minuten warten, um zu sehen, ob die Ausgabe korrekt ist.

Zusammenfassung

Jetzt haben Sie gelernt, wie Sie das Problem lösen können, dass PHP-Skripte nicht ausgeführt werden, indem Sie die PHP-Ausführungszeit in Nginx festlegen. Indem Sie die Schritte in diesem Artikel zum Einrichten befolgen, können Sie sicherstellen, dass Ihr PHP-Skript vollständig ausgeführt wird, ohne sich Gedanken über Zeitüberschreitungen bei der PHP-Ausführung machen zu müssen.

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn die Nginx-PHP-Datei keine Ausführungszeit benötigt?. 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