Heim > Artikel > Backend-Entwicklung > So beheben Sie den PHP 5.6 iis-Fehler 500
Als ich kürzlich eine Website basierend auf PHP 5.6 und IIS bereitgestellt habe, bin ich auf ein sehr beunruhigendes Problem gestoßen, nämlich Fehler 500. Nach ständigem Debuggen und Ausprobieren habe ich endlich eine Lösung für das Problem gefunden, und hier sind die detaillierten Schritte des gesamten Prozesses.
1. Überprüfen Sie die php.ini-Konfigurationsdatei
Zuerst habe ich die php.ini-Konfigurationsdatei überprüft und festgestellt, dass es zwei verschiedene Konfigurationsdateien für diese Website gibt, eine befindet sich im PHP-Installationsverzeichnis und die andere unter das Stammverzeichnis der Website. In diesen beiden Dateien habe ich eine Einstellung namens error_reporting gefunden, die eine der Ursachen für Fehler 500 ist.
error_reporting gibt die Fehlerstufe an, die von PHP gemeldet werden soll. Wenn es auf E_ALL gesetzt ist, werden alle Fehler angezeigt, einschließlich Warnungen und Fehler auf Eingabeaufforderungsebene. Dies kann dazu führen, dass iis einen 500-Fehler zurückgibt. Daher habe ich diese Einstellung in E_ERROR geändert, sodass PHP nur Fehler meldet, die zum Beenden des Skripts führen, und so die Fehler-500-Situation vermeidet.
2. Überprüfen Sie die FastCGI-Einstellungen
Trotz Änderung der php.ini-Konfigurationsdatei erhielt die Website jedoch immer noch den Fehler 500. Zu diesem Zeitpunkt begann ich zu vermuten, dass FastCGI mit iis zusammenhängt.
Um das Problem bestmöglich zu ermitteln, habe ich jede Website und die Standardwebsite geändert. Bezüglich Fehler 500 müssen Sie außerdem die folgenden Punkte überprüfen:
a Die CGI-Pfade von php.exe, php-cgi.exe und php.ini müssen zum Abschnitt „Umgebungsvariablen“ in den FastCGI-Einstellungen hinzugefügt werden.
b. Ändern Sie unter „Handler Mapping“ den Code von FastCGIModule in FastCGI.
c. Stellen Sie für jede Website oder Standardwebsite sicher, dass der von FastCGI festgelegte Konfigurationsordnerpfad korrekt ist. Eine übliche Methode besteht darin, den Konfigurationsordnerpfad auf C: PHP festzulegen. Dieser Pfad ist auch die Standardinstallation von PHP. Weg.
3. Überprüfen Sie das IIS-Protokoll
Gleichzeitig habe ich auch die Fehlerdetails im IIS-Protokoll überprüft. Klicken Sie im Abschnitt „Website“ des IIS-Managers mit der rechten Maustaste auf die Website und wählen Sie „Website verwalten“ – „Bankprotokoll“ – „Zertifikat“, um den Pfad zum IIS-Protokoll zu finden. In dieser Protokolldatei habe ich eine wichtige Fehlermeldung gefunden: „Der Prozess kann nicht gestartet werden, da die Bibliotheksdatei nicht gefunden werden kann.“
Dieser Fehler bedeutet normalerweise, dass iis den falschen PHP- oder FastCGI-Prozess gestartet hat oder zur Laufzeit nicht über die richtigen Berechtigungen verfügte oder die Berechtigungen geändert wurden. Um dies zu beheben, habe ich PHP neu installiert, sichergestellt, dass IIS den richtigen PHP-Prozess gestartet hat, und bestätigt, dass die Berechtigungen richtig festgelegt wurden.
Zusammenfassung
Nachdem ich alle möglichen Probleme behoben habe, läuft meine PHP 5.6 IIS-Website endlich einwandfrei. Dieser Problemlösungsprozess war langwierig, aber dennoch eine Lern- und Wachstumserfahrung.
Die Lösung kann je nach Umgebung und Einstellungen variieren, aber die Überprüfung der php.ini-Konfigurationsdatei und der FastCGI-Einstellungen für iis hat immer oberste Priorität. In diesem Prozess ist es für uns von großem Nutzen, Websites auf Basis von PHP und IIS zu entwickeln und zu pflegen, indem wir tiefgreifend verstehen, wie PHP und IIS funktionieren, ständig debuggen und die Grundursachen des Problems ausgraben und nicht nur das Problem auf der Website betrachten Oberfläche.
Das obige ist der detaillierte Inhalt vonSo beheben Sie den PHP 5.6 iis-Fehler 500. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!