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?
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>
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
avez-vous enregistré la page qui contient
<?php
phpinfo();
?>
avec extension .php? quelque chose comme info.php pas info.html ...
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
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é
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.
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é ^ _ ^
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
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.
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
.
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.
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.
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.
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.