Bei der Entwicklung und Bereitstellung von PHP -Anwendungen werden Umweltprobleme für uns häufig zu einem schwierigen Problem für uns. Unterschiede zwischen Betriebssystemen, Webserverkonfigurationen und PHP -Versionsunterschieden können dazu führen, dass einige Funktionen nicht ordnungsgemäß funktionieren. Um diese Probleme schnell zu diagnostizieren, bietet PHP ein sehr praktisches Werkzeug: die Funktion phpinfo () . Dadurch können wir detaillierte Konfigurationsinformationen in der aktuellen PHP -Umgebung, einschließlich PHP -Version, aktivierter Erweiterungen, Konfigurationsdateiort usw. anzeigen und dabei helfen, Probleme zu finden. Als nächstes werden wir uns mit der Verwendung von PHPinFO () eintauchen, um häufige Probleme in PHP -Umgebungen zu debuggen und zu beheben.
Die Phpinfo () -Funktion ist ein sehr einfaches und leistungsstarkes Werkzeug, das in PHP eingebaut ist. Rufen Sie es einfach im PHP -Skript auf und der Browser zeigt die vollständigen Informationen der aktuellen PHP -Konfiguration an. Sie müssen nur eine einfache PHP -Datei erstellen, z. B. phpinfo.php und den folgenden Code hinzuzufügen:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-title function_ invoke__">phpinfo</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Laden Sie nach dem Speichern der Datei sie auf den Webserver hoch. Beim Zugriff auf die Datei über einen Browser generiert PHP eine Webseite, die die Details der aktuellen PHP -Umgebung enthält. Der Inhalt der Seite umfasst, ist jedoch nicht auf die folgenden Aspekte beschränkt:
PHP -Version : Die derzeit ausgeführte PHP -Version.
Betriebssysteminformationen : Das Betriebssystem des Servers und seiner Architektur.
PHP -Konfiguration : Speicherort der Php.ini -Datei, geladene Konfigurationsoptionen, Umgebungsvariablen usw.
Erweiterungsinformationen : Listet alle aktivierten PHP -Erweiterungen und deren Versionen auf.
Serverinformationen : wie die Konfiguration eines Webservers (z. B. Apache oder Nginx), aktivierte Module usw.
Verschiedene Versionen von PHP können dazu führen, dass ein Code nicht kompatibel ist oder einige Funktionen nicht verfügbar sind. Beispielsweise gibt es einige Unterschiede zwischen Php 5 und Php 7, und PHP 8 hat viele neue Funktionen eingeführt. Verwenden Sie Phpinfo () , um die aktuelle Versionsnummer des PHP einfach zu überprüfen, und bestätigen Sie, ob der Code mit der Version kompatibel ist.
Auf der Seite phpinfo () finden Sie ein Feld namens PHP -Version , auf dem die derzeit ausgeführte PHP -Version angezeigt wird.
Viele PHP -Anwendungen stützen sich auf bestimmte Erweiterungen wie MySQL, GD, Locken usw. Wenn eine Erweiterung nicht korrekt geladen wird, kann die Anwendung Fehler aufweisen oder nicht ordnungsgemäß funktionieren. Die aktuell aktivierten Erweiterungen und ihre Versionen können über den Abschnitt "Laded Extensions" im Ausgang von Phpinfo () angezeigt werden.
Wenn Sie feststellen, dass eine Erweiterung fehlt, können Sie diese aktivieren, indem Sie die Konfigurationsdatei von Php.ini ändern oder das fehlende Erweiterungspaket installieren. Beispielsweise können Sie auf Linux -Systemen die Erweiterung mit dem folgenden Befehl installieren:
<span><span>sudo apt-get install php-curl
sudo apt-get install php-mbstring
</span></span>
Manchmal sind PHP -Umgebungsprobleme möglicherweise auf die Verwendung der falschen Php.ini -Konfigurationsdatei zurückzuführen. Mit Phpinfo () finden Sie leicht den Pfad der derzeit verwendeten Php.ini -Datei. Suchen Sie auf der Ausgabeseite nach dem Feld geladener Konfigurationsdatei und sehen Sie sich den Dateipfad an, auf den sie verweist.
Wenn dieser Pfad falsch ist, können Sie die richtige Php.ini -Datei auf dem Server manuell angeben oder die Webserverkonfiguration überprüfen, um sicherzustellen, dass die richtige PHP -Konfigurationsdatei geladen wird.
In einigen Fällen können PHP -Anwendungen möglicherweise nicht in der Lage sein, Datei -Uploads oder Lesen von Dateien zu verarbeiten. Sie können Konfigurationsoptionen im Zusammenhang mit dem Upload von Dateien über phpinfo () anzeigen, z. B. Upload_MAX_FILESIZE , pOST_MAX_SIZE , MAX_FILE_UPLOADS und andere Felder. Diese Konfigurationselemente bestimmen die maximale Dateigröße, die PHP verarbeiten kann, das zulässige maximale Anforderungsvolumen usw.
Wenn die Funktion "Datei -Upload" ein Problem gibt, können Sie prüfen, ob diese Werte wie erwartet sind. Bei Bedarf können Sie es in php.ini einstellen:
<span><span><span class="hljs-attr">upload_max_filesize</span></span><span> = </span><span><span class="hljs-number">10</span></span><span>M
</span><span><span class="hljs-attr">post_max_size</span></span><span> = </span><span><span class="hljs-number">20</span></span><span>M
</span></span>
Überprüfen Sie gleichzeitig die Berechtigungseinstellungen der Datei, um sicherzustellen, dass PHP die Erlaubnis zum Lesen oder Schreiben in das angegebene Dateiverzeichnis hat.
Wenn Ihr PHP -Skript nicht ordnungsgemäß ausgeführt wird, kann es mit der Konfiguration des Webservers zusammenhängen. Mit PHPInfo () können Sie anzeigen, wie PHP in einen Webserver integriert wird, z. B. im Feld Server -API , und zeigen, ob PHP als Apache -Modul, FastCGI oder andere Methoden ausgeführt wird. Unterschiedliche Integrationsmethoden erfordern möglicherweise unterschiedliche Konfigurationen oder Abstimmungen.
Während phpinfo () sehr nützlich ist, kann es auch sensible Informationen austreten. Wenn der Angreifer die detaillierte Informationen des Servers erhalten und dann einen Angriff durchführen kann, kann es ermöglichen , die Seite phpinfo () öffentlich aufzudecken. Nach Abschluss des Debuggens löschen Sie daher unbedingt die Seite phpinfo () oder beschränken Sie deren Zugriffsrechte, um Sicherheitsrisiken zu vermeiden.
Sie können den Zugriff auf die Datei phpinfo.php beschränken, indem Sie:
Setzen Sie es in ein Verzeichnis, das nicht für die Öffentlichkeit zugänglich ist.
Stellen Sie auf dem Webserver Zugriffskontrollen für diese Datei fest, z. B. können nur bestimmte IP -Adressen zugreifen.
PHPINFO () ist ein sehr leistungsfähiges Tool, mit dem Entwicklern Probleme in der PHP -Umgebung schnell verstehen und beheben können. Durch diese können Sie PHP -Version, geladene Erweiterungen, Konfigurationsdateiwege und andere Informationen anzeigen, um verschiedene Probleme während des Betriebs der Anwendung zu diagnostizieren. Sie sollten jedoch auch auf die Sicherheit während des Gebrauchs achten und sicherstellen, dass die Ausgabe von Phpinfo () nicht der Außenseite ausgesetzt ist. Nach dem Beherrschen dieser Technik werden PHP -Umgebungsprobleme debuggen und beheben, effizienter und präziser.