web-dev-qa-db-fra.com

phpinfo () ne fonctionne pas

PHP est installé sur mon serveur CENTOS. Cependant, lors de l'exécution d'un phpinfo () dans mon script pour le tester, je reçois le code HTML, pas les informations interprétées . Je peux voir les dossiers pour PHP. Je peux même voir le fichier php.ini dans le dossier etc . Mais php lui-même ne semble pas fonctionner . Je veux dire que mon fichier test.php ressemble à ceci:

<?php
phpinfo();
?>

Et la réponse ressemble à ceci:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html><head>
<style type="text/css">
body {background-color: #ffffff; color: #000000;}
body, td, th, h1, h2 {font-family: sans-serif;}
pre {margin: 0px; font-family: monospace;}
a:link {color: #000099; text-decoration: none; background-color: #ffffff;}
...

etc.

Quel semble être le problème et comment le résoudre? Si je copie le code HTML renvoyé, le colle dans un fichier HTML et l'exécute à partir de cet emplacement, je peux voir le résultat mis en forme, mais pas en exécutant le test. php. Je suppose que php n'est pas chargé d'une manière ou d'une autre ... même si dans le code HTML interprété, je peux voir le:

**Server API    Apache 2.0 Handler
Virtual Directory Support   disabled
Configuration File (php.ini) Path   /etc/php.ini
Scan this dir for additional .ini files /etc/php.d
additional .ini files parsed    /etc/php.d/dbase.ini, /etc/php.d/json.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_sqlite.ini
PHP API 20041225
PHP Extension   20050922
Zend Extension  220051025
Debug Build no
Thread Safety   disabled
Zend Memory Manager enabled
IPv6 Support    enabled
Registered PHP Streams  php, file, http, ftp, compress.bzip2, compress.zlib, https, ftps**

etc...

Sur ce système, 3 sites Web sont hébergés. Cela at-il quelque chose à voir avec ce problème?

10
user1137313

Cela m'est arrivé aussi. Le correctif l'enveloppait dans des balises HTML. Ensuite, j'ai enregistré le fichier sous le nom /var/www/html/info.php et j'ai lancé http: //localhost/info.php dans le navigateur. C'est tout. 

<html>
<body>

<?php
 phpinfo();
?>

</body>
</html>
16
user6204369

Vous devez mettre à jour votre configuration Apache pour vous assurer qu'elle affiche php sous le type texte/HTML. Le code ci-dessous devrait fonctionner, mais certaines configurations sont différentes.

AddHandler php5-script .php
AddType text/html .php
8
cmorrissey

avez-vous enregistré la page qui contient 

<?php
 phpinfo();
?>

avec extension .php? quelque chose comme info.php pas info.html ...

7
Friend

Ceci l’a fait pour moi (la deuxième réponse): pourquoi mes fichiers php sont-ils affichés en texte brut?

En ajoutant simplement ceci, rien d'autre n'a fonctionné.

apt-get install libapache2-mod-php5
5
Sam Bing

Juste avoir le même problème et a constaté qu'un client avait désactivé cette fonction de son php.ini

; This directive allows you to disable certain functions for security reasons.
; It receives a comma-delimited list of function names. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
disable_functions = phpinfo;

Plus d'infos: Activer et désactiver phpinfo () pour des raisons de sécurité

3
John Magnolia

essayez de créer un fichier php.ini à la racine, écrivez la commande suivante et sauvegardez-le.

disable_functions =

l'utilisation de ce code activera la fonction phpinfo () si elle est désactivée par la configuration globale php.

1
Ahmad

Assurez-vous que la balise "php" est collée dans le code Comme ceci

? php phpinfo (); ?>

Pas comme ceci

? php phpinfo (); ?>

OR, le serveur le traitera comme un (mot normal) Le serveur ne comprendra donc pas la langue que vous écrivez pour le gérer, il sera donc vide.

Je sais que c'est une erreur stupide ... mais c'est arrivé ^ _ ^

1
Toqero_Mohamed

m'est arrivé aussi. Dans un serveur REDHAT 7 nouvellement provisionné. 

Quand je lance une page php i.e. info.php, je peux voir des scripts php en texte brut au lieu de les exécuter

Je viens d'installer php

[root@localhost ~]# yum install php

Puis redémarrez Apache

[root@localhost ~]# systemctl restart httpd
0
Omari Victor Omosa

J'ai accidentellement défini les mauvaises autorisations de fichiers. Après chmod 644 phpinfo.php, l'info s'est en effet révélée comme prévu.

0
kghbln

Pour les personnes qui n'ont aucune expérience dans la création de sites Web (comme moi), j'ai beaucoup essayé, mais je me suis rendu compte que je n'avais pas utilisé l'extension .php, mais l'extension .html.

0
peterk

Une autre réponse possible pour win10:

La commande httpd -k restart fait pas fonctionne sur ma machine.

Essayez d’utiliser win10 Service pour redémarrer le service relatif.

0
miehmg

Cela peut ne pas fonctionner pour vous si vous utilisez localhost/info.php. Vous pourrez peut-être trouver l'indice à partir de l'erreur. Recherchez le numéro de port dans le message d'erreur. Pour moi, c'était 80. J'ai changé d'adresse en http: // localhost: 80/info.php , puis cela a fonctionné pour moi. 

0
M Kamakshaiah

J'ai eu le même problème. La solution dans mon cas a été de définir default mime type = "text/html" inside php.ini.

0
W.M.

Ma solution a été désinstaller et réinstaller le php (7.0 dans mon cas):

Sudo apt-get purge php7.0 Sudo apt-get install php7.0

une fois que vous aurez besoin de redémarrer le service Apache:

Sudo service Apache2 restart

enfin, vérifiez à nouveau dans votre navigateur avec votre adresse IP ou votre hôte local. 

0
NarcosdaCol