Mit der rasanten Entwicklung des Internets sind Webdienste zu einer der wichtigsten Möglichkeiten für Menschen geworden, Informationen zu erhalten. Eine der beliebtesten Webservice-Technologien ist LAMP, nämlich Linux, Apache, MySQL und PHP. Ihr Aufkommen erleichtert die Erstellung dynamischer Webanwendungen. Obwohl LAMP häufig als vollständige Webdienstlösung verwendet wird, entscheiden sich aufgrund des Ressourcenverbrauchs und der Leistungsprobleme des Apache-Servers immer mehr Menschen für die Verwendung von Nginx anstelle von Apache als Webserver.
Nginx ist ein leistungsstarker, leichter Webserver und Reverse-Proxy-Server. Es handelt sich um eine Open-Source-Software, die sehr stabil ist und mehrere Plattformen unterstützt. Sie implementiert alle Grundfunktionen der Apache-Webdienste und bietet eine bessere Leistung. Allerdings stoßen viele Entwickler immer noch auf einige alte Probleme, wenn sie PHP mit Nginx verwenden, wie zum Beispiel, dass Nginx PHP-Seiten nicht korrekt öffnen kann. Lassen Sie uns das Problem, dass Nginx die PHP-Seite nicht öffnen kann, und seine Lösung im Detail besprechen.
Wenn einige PHP-Programme auf dem Nginx-Server ausgeführt werden, kann die PHP-Seite nicht geöffnet werden. Browser zeigen häufig Fehlermeldungen an: „502 Bad Gateway“ oder „404 Not Found“. Dies wird normalerweise dadurch verursacht, dass PHP-FPM (PHP FastCGI Process Manager) nicht ordnungsgemäß startet. PHP-FPM ist ein externer Prozessmanager, der in der Nginx-Lösung ausgeführt wird und für die Verwaltung der Zuweisung und Ausführung des PHP-Interpreterprozesses verantwortlich ist.
Das Folgende ist eine Lösung für das Problem, dass Nginx die PHP-Seite nicht öffnen kann:
Stellen Sie zunächst sicher, dass Sie Nginx und PHP-FPM korrekt installiert haben. Wenn Sie sie nicht korrekt installieren, können Sie PHP-Skripte möglicherweise nicht korrekt ausführen. Um sicherzustellen, dass PHP-FPM korrekt installiert wurde, führen Sie den folgenden Befehl im Terminal aus:
sudo apt-get install php-fpm
Stellen Sie sicher, dass die Nginx-Konfigurationsdatei vorhanden ist Wenn der PHP-Interpreter korrekt eingerichtet ist, müssen Sie beispielsweise den Pfad der PHP-FPM-Installation zu „location/“ in der Nginx-Konfigurationsdatei hinzufügen.
server { listen 80; root /var/www/html; index index.php index.html index.htm; server_name test.com; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_read_timeout 300; } }
Fügen Sie den obigen Code in die Nginx-Konfigurationsdatei ein und stellen Sie sicher, dass der Pfad dort mit Ihrem tatsächlichen Pfad übereinstimmt. Sobald Sie den Speicherort Ihres PHP-Interpreters richtig konfiguriert haben, verwendet Nginx ihn, um PHP-Skripte zu rendern und sie an die Webbrowser Ihrer Website-Besucher zu übermitteln.
Wenn Sie die Nginx-Konfigurationsdatei geändert haben, sollten Sie den Nginx-Dienst neu starten. Um Nginx neu zu starten, führen Sie den folgenden Befehl im Terminal aus:
sudo service nginx restart
Ebenso müssen Sie den PHP-FPM-Dienst neu starten, wenn Sie die PHP-FPM-Konfigurationsdatei geändert haben. Um PHP-FPM neu zu starten, führen Sie den folgenden Befehl im Terminal aus: `
sudo service php-fpm restart
Wenn Ihre PHP-Seite immer noch nicht richtig funktioniert , kann es daran liegen, dass PHP-FPM nicht gestartet ist. Um zu überprüfen, ob PHP-FPM ausgeführt wird, führen Sie den folgenden Befehl im Terminal aus:
systemctl status php-fpm.service
Wenn es ausgeführt wird, sehen Sie die Worte „Aktiv: aktiv (läuft)“. Wenn nicht, können Sie PHP-FPM neu starten, indem Sie den folgenden Befehl ausführen:
sudo service php-fpm start
Stellen Sie abschließend sicher, dass Ihre PHP-Dateien und PHP Alle abhängigen Ordner verfügen über die richtigen Berechtigungen. Wenn die Berechtigungen der PHP-Datei oder abhängiger Ordner nicht korrekt eingestellt sind, kann das PHP-Skript nicht ausgeführt werden. Um Datei- oder Ordnerberechtigungen zu ändern, führen Sie den folgenden Befehl im Terminal aus:
sudo chown -R www-data:www-data /var/www/html/
Der obige Befehl ändert den Besitz von Dateien und Ordnern auf den Benutzer und die Gruppe www-data.
Nginx ist ein Hochleistungs-Webserver und Reverse-Proxy-Server, der als Alternative zu Apache zum Ausführen dynamischer Webanwendungen verwendet werden kann. Aufgrund einiger Konfigurationen und Probleme zwischen Nginx und PHP-FPM können Sie die PHP-Seite jedoch manchmal nicht korrekt öffnen. In diesem Fall können Sie die oben genannten Schritte nacheinander zur Fehlerbehebung ausführen. Nachdem alle oben genannten Schritte abgeschlossen sind, sollten Sie PHP-Skripte normal auf dem Nginx-Server ausführen können.
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Nginx die PHP-Seite nicht öffnen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!