phpinfo () - gibt es eine einfache Möglichkeit, es zu sehen?


123

Jedes Mal, wenn ich das sehen möchte, muss phpinfo();ich:

  • Erstellen Sie eine info.php-Datei.
  • Schreiben phpinfo();Sie hinein.
  • Gehen Sie zum Browser und geben Sie mein "thisproject.dev/info.php" ein.

Ich bin auf Ubuntu.

Gibt es nicht eine praktischere Möglichkeit, phpinfo im Browser anzuzeigen?


2
Wie @Jaitsu und Brian Gordon geschrieben haben, können Sie über die Befehlszeile auf PHP zugreifen, aber was sie nicht erwähnt haben, ist, dass sich PHP in der Befehlszeile manchmal von einem in Apache unterscheidet, dh sie arbeiten in verschiedenen Modi und haben möglicherweise sogar unterschiedliche Konfigurationen Dateien.
binaryLV

@binaryLV guter Punkt, einer, den ich übersehen habe, als ich antwortete
JamesHalsall

Antworten:


219

Über Ihre Befehlszeile können Sie ausführen.

php -i

Ich weiß, dass es nicht das Browserfenster ist, aber Sie können den phpinfo();Inhalt nicht sehen, ohne den Funktionsaufruf auszuführen. Der beste Ansatz wäre natürlich, ein phpinfo-Skript im Stammverzeichnis Ihres Webserververzeichnisses zu haben, damit Sie jederzeit über http://localhost/info.phpoder ähnliches darauf zugreifen können (HINWEIS: Tun Sie dies nicht in einer Produktionsumgebung oder an einem anderen Ort ist öffentlich zugänglich)

BEARBEITEN: Wie von binaryLV erwähnt, ist es durchaus üblich, zwei Versionen einer php.ini pro Installation zu haben. Eine für die Befehlszeilenschnittstelle (CLI) und die andere für die Webserverschnittstelle. Wenn Sie die phpinfo-Ausgabe für Ihren Webserver anzeigen möchten, geben Sie den Pfad der INI-Datei an, z.

php -c /etc/php/apache2/php.ini -i 

10
Vergessen Sie nicht, es zu sichern , da die Ausgabe von phpinfo()nicht öffentlich zugänglich sein sollte.
binaryLV

Es gibt auch einen guten Grund, die 2 NICHT ZU VERBINDEN,php.ini insbesondere wenn Sie auf einem öffentlichen Server arbeiten.
JohnnyQ

Sie sollten wirklich nur das Flag -c verwenden und den Pfad für die richtige INI-Datei übergeben, anstatt etwas wie Symlinking oder so weiter zu tun.
Chris Rasys

@ChrisRasys Warum sollten Sie es jedes Mal angeben müssen, wenn Sie CLI-Skripte ausführen?
JamesHalsall

@JamesHalsall Wenn Sie die von Ihrem Webserver verwendeten PHP-Einstellungen emulieren müssen, ist dies der richtige Weg. Andernfalls verwenden Sie entweder fälschlicherweise die CLI-Einstellungen oder entfernen die Trennung zwischen CLI-Einstellungen und Webservereinstellungen. Diese Trennung besteht aus einem Grund.
Chris Rasys

18

Wenn Sie PHP auf Ihrem lokalen Computer installiert haben, versuchen Sie:

$ php -a
Interactive shell

php > phpinfo();

2
Bekommt dies die php.inider Cli-Version oder die in Apache? In meinem Fall benutze ich 2 php.inifür Cli und Apache.
JohnnyQ

2
Ich habe es versucht und es wird php.inivon der CLI-Version. Wenn Sie 2 Versionen behalten, ist php.inidies möglicherweise nicht anwendbar.
JohnnyQ

15

Über die CLI können Sie am besten Folgendes verwenden grep:

php -i | grep libxml

3
Dies ist eine schöne Möglichkeit, in der PHP-INI zu suchen.
claudiu.f.marginean

10

Von der CLI:

php -r 'phpinfo();'

Mein Webhost (Debian 7): php -r 'phpinfo ();' Fehler in Argument 1, Zeichen 2: Option nicht gefunden r php -v PHP 4.4.9 (cgi-fcgi) (erstellt: 28. Februar 2017 11:31:58)
Gefangener 13.

2

Verwenden Sie die Befehlszeile.

touch /var/www/project1/html/phpinfo.php && echo '<?php phpinfo(); ?>' >> /var/www/project1/html/phpinfo.php && firefox --url localhost/project1/phpinfo.php

Sowas in der Art? Idk!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.