J'ai récemment essayé d'installer PHP et Apache sur mon ordinateur. Après de nombreuses heures, ils sont installés. J'ai modifié les fichiers httpd.conf et php.ini comme tout le monde le dit. J'ai ensuite créé un simple script PHP:
<?php phpinfo(); ?>
Mais quand j'essaie de l'exécuter avec, http://127.0.0.1/phpinfo.php
il montre simplement le code source au lieu de l'exécuter. J'utilise Apache 2, PHP 5 et Windows Vista.
LIGNES MODIFIÉES:
PHP.INI:
short_open_tag = On
HTTPD.CONF
LoadModule php5_module "C:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PHPIniDir "C:/php"
<?php echo "Hello world"; ?>
affiche-t-il Hello world? s'il affiche le code, alors comment @RabNawaz a dit que votre serveur n'est pas configuré correctement!http://localhost/
ouhttp://127.0.0.1/
Réponses:
Vous devez activer php! Vérifiez le dossier
mods-enabled
dans le répertoire Apache (par défaut:)/etc/apache2/
pour voir si vous trouvez un fichier nomméphp
. Je ne me souviens pas de l'extension mais je pense que c'est.so
.Vérifiez également
/var/log/apache2/error.log
si vous avez d'autres erreurs.la source
a2enmod php7.0
et cela a résolu mon problème. Il a fallu une journée entière pour atteindre ce poste en quelque sorte!php
dansmods-enabled
, maintenant? Cette réponse n'explique pas les chosesWow, beaucoup de solutions ici! Voici ce que j'ai fait sur Ubuntu 16.04 :
la source
--reinstall
à apt-get. L'installation du module php / apache était peut-être sale.Considering conflict php5 for php7.0
,Considering conflict mpm_worker for mpm_prefork
, etc ... et apache2 redémarrage échoueConsidering conflict php5 for php7.2
allez/etc/apache2/mods-available
et supprimezphp5.*
Pour PHP 7 (peut également s'appliquer aux versions précédentes), mais je devais faire ceci:
Ajoutez ceci au bas de /etc/apache2/apache2.conf
Exécutez ceci à partir du terminal:
N'oubliez pas de redémarrer Apache pour qu'il sache que vous avez changé les choses:
Ceci est un résumé de: https://www.atlantic.net/community/howto/try-php7-lamp-ubuntu-14-04/
la source
ouvrir le dossier
/etc/apache2/httpd.conf
et changer
dans
Donc, décompressez le chargement du module PHP dans
httpd.conf
la source
J'ai trouvé cela pour résoudre mon problème connexe. Je l'ai ajouté à la
<Directory>
section correspondante :la source
Une réponse différente qui a fonctionné pour moi. Est-ce que pour installer
[sudo] apt-get install libapache2-mod-php5.X
la source
Bien si vous avez essayé ce qui vous a été dit ci-dessus ou plus tôt (qui sont des raisons possibles) et qu'il affiche toujours le code au lieu de l'exécuter, il y a une chose que vous faites mal qui n'a pas été résolue. L'url que vous avez utilisée pour accéder à votre code php; certaines personnes essaient d'exécuter leur code php en faisant simplement glisser le fichier .php dans le navigateur Web. cette pratique est erronée et pourrait conduire à ce genre de problème. si vous avez enregistré un fichier sous le nom "test.php" dans le dossier C: // wamp / www, vous devez accéder à ce fichier de cette manière: localhost: //test.php. ce genre d'erreur se produira lorsque vous y accédez de cette façon: localhost: //wamp/www/test.php
J'espère que j'ai aidé quelqu'un là-bas. o / ~ Daniel
la source
Publier ce qui a fonctionné pour moi au cas où cela aide quelqu'un sur la route, bien que ce soit un cas inhabituel.
J'avais défini un gestionnaire pour forcer mon hôte Web à utiliser une version supérieure de php que sa version par défaut. Il y avait 5.1, mais je voulais 5.6 alors j'ai eu ceci:
dans mon fichier .htaccess.
Lorsque j'essayais d'exécuter mon site localement, cela provoquait la sortie de code php vers le navigateur. Le supprimer a résolu le problème.
la source
la source
Vous pouvez supprimer votre fichier .htaceess et laisser le système en créer un nouveau (vierge ou basique). Il se peut que certaines lignes que vous avez ajoutées soient des déclarations incorrectes ou que quelque chose d'autre à l'intérieur soit à l'origine du problème. Vous pouvez ensuite ajouter ligne par ligne à partir de votre ancien fichier .htaccess pour voir ce qui a causé le problème.
Cela a fonctionné pour moi. Les lignes indiquant à la machine de ne pas afficher les extensions php étaient un problème dans mon cas ( RewriteCond et RewriteRule ). Mon ancien fichier .htaccess fonctionnait très bien sur un serveur partagé, mais ce problème est apparu lorsque je suis passé à VPS.
la source
sudo a2enmod headers
etsudo a2enmod rewrite
(n'oubliez pas de redémarrer Apache).Merci aux autres sur ce fil pour leurs suggestions. En suivant les étapes mentionnées, j'ai constaté que le serveur Apache n'était pas en mesure de commencer à signaler une erreur de syntaxe dans un
load
fichier dans/etc/apache2/mods-enabled
. Il s'avère que php7.0 et php7.1 ont été activés.et php est à nouveau rendu correctement.
la source
si le module userdir est activé et que votre site est dans un userdir (~ / public_html), vous devez vérifier /etc/apache2/mods-enabled/php5.conf. La partie suivante le fait fonctionner (sur Ubuntu 14.10 utopic):
la source
Si vous êtes un utilisateur ubuntu, après l'installation d'apache, vous devez exécuter la commande suivante dans une nouvelle installation
Dans mon cas fonctionne très bien.
la source
Ce qui a fonctionné pour moi:
Dans httpd.conf actif, recherchez
Il manquait ce qui suit
Après avoir redémarré Apache, les fichiers .php sont correctement analysés.
la source
aucun des éléments ci-dessus ne s'est appliqué ou n'a fonctionné pour moi ... PHP7, Apache Httpd 2.2 sur CentOS 6
le fait est que j'ai installé (tout avec yum) php AVANT Apache ... vous devez faire l'inverse: toujours installer Apache d'abord, puis PHP, et ensuite ça marche ... En effet, vous êtes probablement absent
libphp7.so
etlibphp7-zts.so
en/etc/httpd/modules/
J'ai pu récupérer de toute façon sans désinstaller PHP. J'ai ajouté la ligne magique dans
/etc/httpd/conf/httpd.conf
:AddType application/x-httpd-php .php
Et puis exécutez:yum install php php-mysql
la source
Pour PHP7 et Apache2.4, c'est tout ce que vous devez faire:
Allez tout en bas et insérez ce qui suit (tout seul):
Apache va maintenant tout exécuter avec PHP. Si tout ce que vous avez sont des fichiers html et php, cela fonctionnera très bien pour vous. Si vous avez d'autres types de fichiers, vous devrez adapter le fichier à votre situation. J'ai testé cela avec phpMyAdmin et il ne semble pas y avoir de problème ... jusqu'à présent.
Aucune de ces autres choses dont tout le monde parle ici n'était nécessaire pour moi. Quand j'ai mis le truc "AddType Application ....." au bon endroit, Apache m'a juste dit que ce module était déjà chargé et l'a ignoré.
Plus d'informations peuvent être trouvées ici: https://httpd.apache.org/docs/2.4/mod/core.html#filesmatch
Mon installation s'est déroulée comme suit:
Vous devriez également lire ceci, si vous ne l'avez pas fait: https://httpd.apache.org/docs/current/howto/htaccess.html#when
la source
Cela m'arrivait également lors de l'exécution de $ _POST dans MAMP. Tous mes fichiers .ini et httpd ont tous été correctement configurés. Si vous manipulez des formulaires et que vous avez un document html et que vous publiez les informations dans un gestionnaire de formulaires php exécutant $ POST, assurez-vous que vous exécutez le fichier html depuis localhost via votre serveur, et pas seulement localement.
C'était un raccourci que j'ai fait pour exécuter des documents html, en cliquant simplement sur le fichier html dans mon répertoire et en le lançant dans mon navigateur Web, alors qu'en réalité pour vérifier si php est en cours de traitement dans votre formulaire, vous devez exécuter votre html via vos serveurs. Un protocole très simple que j'ai négligé.
Exemple:
Faux:
file:///Applications/MAMP/htdocs/form/form.html
Droite:
http://localhost:your port number/form/form.html
Maintenant, le php devrait être traité une fois que vous avez cliqué sur votre bouton d'envoi
la source
J'ai eu le même problème, causé par la configuration par défaut du module Debian / Ubuntu
suphp
. Il contenaitsuPHP_Engine off
pour tout / usr / share, ce qui a entraîné l'affichage des sources php dans le navigateur. La désactivation aveca2dismod suphp
était la solution provisoire.la source
J'ai eu le même problème. Lorsque j'exécute un fichier php, le navigateur Web m'a montré le code php au lieu de l'exécuter. J'avais essayé plusieurs fois: désinstaller / réinstaller le wampserver64, travailler autour des paramètres / modules PHP / Apache, etc. Après 2 jours: je me suis rendu compte que lorsque j'ai essayé d'exécuter le fichier php dans le bloc-notes ++ en appuyant sur la combinaison par défaut "ctrl + alt + shift + R "pour le chrome. Il essayait d'exécuter mon fichier php comme: "fichier /// C: / wamp64 / www / bla / bla .." dans la barre d'adresse de mon chrome. C'était mon problème. J'ai fait les changements selon la page Configurer Notepad ++ pour exécuter php sur localhost? . Mon problème a été résolu. Mais après 2 jours ..
la source
Exécutez Xampp (apache) en tant qu'administrateur. Dans google chrome, tapez:
localhost/<insert folder name here>/<insert file name>
c'est-à-dire que si le dossier que vous avez créé est "LearnPhp", le fichier est "chapter1.php" puis tapez
localhost/LearnPhp/chapter1.php
J'ai créé ce dossier dans le dossier xampp dans le dossier htdocs qui est créé lorsque vous téléchargez xampp.
la source
Solution Debian 9:
Ajouter au fichier les lignes suivantes:
Puis exécutez:
la source
/etc/apache2/mods-available/php7.2.conf
Parfois, si vous avez des conflits de version php, cela arrive Pour surmonter cela, veuillez suivre les étapes ci-dessous
Étape 1: Liste Yum installée | grep 'php'
Étape 2: yum supprimez ** votre version PHP **
Étape 3: Ensuite, redémarrez l'apapche
/etc/init.d/httpd restart
ouservice apache2 restart
la source
Cette solution a fonctionné pour moi. J'ai purgé apache2 et réinstaller. Cela s'est produit après la purge et l'installation. S'il s'agit de la première installation, vous ne seriez pas confronté à ce problème.
la source
J'ai essayé un certain nombre des solutions ci-dessus, mais le correctif dans notre scénario était d'installer le module fpm.
Nous avions installé httpd avant php, ce qui peut avoir quelque chose à voir avec le problème, mais pour résoudre nous avons installé ce qui suit:
module yum installer php: 7.2
Cela a installé le module php-fpm-7.2.11-4.module + el8.1.0 + 5443 + bc1aeb77.x86_64.rpm que nous avons ensuite activé par:
systemctl enable - maintenant php-fpm
À partir de là, nous avons laissé le fichier /etc/httpd/conf.d/php.conf par défaut et avons redémarré httpd
redémarrage du service httpd
Ensuite, tout a fonctionné.
J'espère que cela aide, a pris beaucoup plus de temps qu'il n'aurait dû le comprendre.
la source
Ajouter la configuration suivante à
/etc/apache2/apache2.conf
Et redémarrez la
apache
viasudo service apache2 restart
la source