Apache télécharge des fichiers php au lieu d’exécuter un script

Je viens de configurer un serveur web local sur un nouveau Mac fonctionnant sous 10.6 (Apache2 / PHP / Mysql). Tout semble fonctionner correctement, sauf lorsque je navigue sur SOME (pas la plupart) des pages qu’Apache télécharge au lieu de les exécuter.

Je pensais que cela pourrait avoir quelque chose à voir avec le temps nécessaire à PHP pour exécuter le script, donc j’ai augmenté mon “max_execution_time” mais cela n’a pas aidé.

J’aimerais pouvoir donner plus de détails, mais les journaux d’erreurs ne génèrent rien, donc je ne sais vraiment pas pourquoi cela se produit. Une chose qui pourrait être importante est que seules les pages qui n’interrogent pas la firebase database semblent fonctionner à chaque fois.

METTRE À JOUR:

Je viens juste de découvrir quelque chose d’étrange qui pourrait insister davantage sur le problème. Si je tape les URL suivantes:

localhost / index.php // la page d’accueil est correctement servie

localhost / index.php? page = 1 // la page d’accueil est correctement servie

localhost / index.php? page = home // ERREUR: index.php est téléchargé !!!!!!!!!!

localhost / index.php? page = contact // la page de contact est servie correctement

localhost / index.php? page = blog // ERREUR: index.php est téléchargé

localhost / index.php? page = 10 // la page du blog est correctement servie

Décommenter la ligne suivante dans /etc/apache2/httpd.conf a résolu le problème pour moi:

LoadModule php5_module libexec/apache2/libphp5.so 

Vous pouvez essayer d’append ceci à votre conf ou htaccess:

 AddType application/x-httpd-php .php 

Je sais que cela a été demandé il y a longtemps, mais je viens de rencontrer ce problème alors j’ai pensé que je posterais la cause pour moi.

Assurez-vous de ne pas avoir …

Application AddHandler / x-httpd-php5 .php

… dans votre fichier .htaccess et votre fichier httpd.conf. Vérifiez votre fichier .htaccess, commentez-le, redémarrez Apache et réessayez. C’est probablement votre problème, car Apache affiche PHP pour certains sites, mais pas pour d’autres. Il doit être au niveau du répertoire, ce qui indiquerait un paramètre de fichier .htaccess.

Je suis tombé sur ce problème après la mise à niveau de PHP en 5.5 et la réinstallation d’Apache.

Enfin, cela a résolu le problème, au cas où quelqu’un d’autre en aurait besoin.

apt-get install libapache2-mod-php5

( voici la réponse )