phpinfo () - y a-t-il un moyen facile de le voir?

123

Chaque fois que je veux voir le phpinfo();je dois:

  • Créez un fichier info.php;
  • Écrivez- phpinfo();y.
  • Allez dans le navigateur et tapez mon "thisproject.dev/info.php"

Je suis sur Ubuntu.

N'y a-t-il pas un moyen plus pratique de voir phpinfo dans le navigateur?

MEM
la source
2
Comme @Jaitsu et Brian Gordon l'ont écrit, vous pouvez accéder à PHP via la ligne de commande, mais ce qu'ils n'ont pas mentionné, c'est que parfois PHP en ligne de commande est différent de celui d'Apache, c'est-à-dire qu'ils fonctionnent dans différents modes et peuvent même avoir une configuration différente. des dossiers.
binaryLV
@binaryLV bon point, un que j'ai négligé quand j'ai répondu
JamesHalsall

Réponses:

221

Depuis votre ligne de commande, vous pouvez exécuter.

php -i

Je sais que ce n'est pas la fenêtre du navigateur, mais vous ne pouvez pas voir le phpinfo();contenu sans faire l'appel de fonction. De toute évidence, la meilleure approche serait d'avoir un script phpinfo à la racine de votre répertoire de serveur Web, de cette façon vous y aurez accès à tout moment via http://localhost/info.phpou quelque chose de similaire (REMARQUE: ne faites pas cela dans un environnement de production ou quelque part où est accessible au public)

EDIT: Comme mentionné par binaryLV, il est assez courant d'avoir deux versions d'un php.ini par installation. Un pour l'interface de ligne de commande (CLI) et l'autre pour l'interface du serveur Web. Si vous voulez voir la sortie phpinfo pour votre serveur Web, assurez-vous de spécifier le chemin du fichier ini, par exemple ...

php -c /etc/php/apache2/php.ini -i 
JamesHalsall
la source
10
N'oubliez pas de le sécuriser , car la sortie de phpinfo()ne doit pas être accessible au public.
binaryLV
Il y a aussi une bonne raison pour NE PAS LIER les 2 php.inisurtout si vous travaillez sur un serveur public.
JohnnyQ
Vous devriez vraiment simplement utiliser l'indicateur -c et passer le chemin du fichier .ini approprié au lieu de faire quelque chose comme des liens symboliques ou autre.
Chris Rasys
@ChrisRasys pourquoi voudriez-vous avoir à le spécifier à chaque fois que vous exécutez des scripts CLI?
JamesHalsall
@JamesHalsall Si vous avez besoin d'émuler les paramètres PHP que votre serveur Web utilise, c'est la bonne façon de le faire. Sinon, vous utilisez à tort les paramètres CLI ou supprimez la séparation entre les paramètres CLI et les paramètres du serveur Web. Cette séparation existe pour une raison.
Chris Rasys
18

Si php est installé sur votre machine locale, essayez:

$ php -a
Interactive shell

php > phpinfo();
Brian Gordon
la source
2
Est-ce que cela obtient la php.iniversion cli ou celle d'apache? Dans mon cas, j'utilise 2 php.inipour cli et apache.
JohnnyQ
2
J'ai essayé ceci et il obtient la php.iniversion de CLI. Si vous conservez 2 versions, php.inicela peut ne pas être applicable.
JohnnyQ
15

À partir de la CLI, la meilleure façon est d'utiliser grepcomme:

php -i | grep libxml
totas
la source
3
C'est une bonne façon de rechercher dans php ini.
claudiu.f.marginean
10

Depuis la CLI:

php -r 'phpinfo();'
sjas
la source
Mon hébergeur (debian 7): php -r 'phpinfo ();' Erreur dans l'argument 1, char 2: option non trouvée r php -v PHP 4.4.9 (cgi-fcgi) (construit: 28 février 2017 11:31:58)
Prisonnier 13
2

Utilisez la ligne de commande.

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

Quelque chose comme ca? Idk!

Chris G.
la source