Je viens d'installer CentOS, Apache et PHP. Lorsque je visite mon site http://example.com/myapp/ , il est dit "interdit". Par défaut, il ne charge pas le fichier index.php.
Lorsque je visite http://example.com/myapp/index.php , cela fonctionne très bien.
Une idée de comment résoudre ce problème?
Bien que l'ajout de 'DirectoryIndex index.php' à un fichier .htaccess puisse fonctionner,
REMARQUE:
Ceci est cité sur http://httpd.apache.org/docs/1.3/howto/htaccess.html
Bien que cela se réfère à une ancienne version d'apache, je pense que le principe s'applique toujours.
L'ajout de ce qui suit à votre httpd.conf (si vous y avez accès) est considéré comme une meilleure forme, entraîne moins de surcharge du serveur et a exactement le même effet:
la source
À une supposition, je dirais que l'index du répertoire est défini sur index.html, ou une variante, essayez:
Cela donnera toujours la priorité à index.html sur index.php (pratique si vous avez besoin de lancer une page de maintenance)
la source
Cela pourrait être utile à quelqu'un. voici l'extrait de httpd.conf (Apache version 2.2 windows)
maintenant cela cherchera le fichier index.html s'il n'est pas trouvé, il cherchera index.php.
la source
Essayez de créer un fichier .htaccess avec les éléments suivants
Edit: En fait, n'y a-t-il pas un paquet 'php-apache' ou quelque chose que vous êtes censé installer avec les deux?
la source
J'ai eu le même problème avec un site sur notre site hébergé par l'administrateur direct. J'ai ajouté
en tant qu'extension httd personnalisée (qui ajoute du code à un
httpd
fichier de sites ) et le site a ensuite exécuté leindex.php
.la source
Même problème pour moi. Ma solution était que mod_dir n'était pas activé et apache2 n'émettait pas d'erreur lors de la lecture de la directive dans mon fichier VirtualHost:
Utilisation des commandes:
Correction du problème.
la source
a2enmod
?Pour info: dans certaines conf Apache2, vous devez ajouter la commande DirectoryIndex dans mods_enabled / dir.conf (elle ne se trouve pas dans apache2.conf)
la source
Après avoir lu tout cela et essayé de le réparer, j'ai eu une solution simple sur le forum ubuntu ( https://help.ubuntu.com/community/ApacheMySQLPHP ). Le problème réside dans le module libapache2-mod-php5. C'est pourquoi le navigateur télécharge le fichier index.php plutôt que d'afficher la page Web. Procédez comme suit. Si sudo a2enmod php5 renvoie le module n'existe pas, le problème vient de libapache2-mod-php5. Purge supprimez le module avec la commande sudo apt-get --purge remove libapache2-mod-php5 Puis réinstallez-le sudo apt-get install libapache2-mod-php5
la source
J'ai eu un symptôme similaire. Dans mon cas cependant, mon idiotie était d'avoir involontairement un fichier index.html vide dans le dossier racine Web. Apache servait cela plutôt que index.php lorsque je n'ai pas explicitement demandé index.php, car il
DirectoryIndex
était configuré comme suit dansmods-available/dir.conf
:Autrement dit, «index.html» apparaît avant «index.php» dans la liste des priorités. La suppression du fichier index.html de la racine Web a naturellement résolu le problème. Oh!
la source
Instructions pas à pas et complètes pour Ubuntu 16.04.4 LTS et Apache / 2.4.18
"
sudo -s
""
cd /etc/apache2/mods-enabled
""
vi dir.conf
" et déplacez index.php juste après DirectoryIndex comme ci-dessous et enregistrez le fichier puis redémarrez le serveur apache."
service apache2 restart
"Si vous ne voyez pas dir.conf, vous devrez le charger (google pour savoir comment faire)
Terminé.
la source
Ce message est peut-être vieux mais je le publie simplement au cas où il aiderait une autre personne, je ne conseillerais pas de créer un fichier .htaccess dans votre racine Web et de modifier l'index. Je pense qu'il vaut mieux suivre les étapes
Allez dans le dossier conf de votre dossier apache, le mien est
C:\Apache24\conf
Ouvrez le fichier nommé
httpd.conf
Aller à la section
Ajoutez-y index.php comme indiqué ci-dessous
De cette façon, il choisit toujours index.html et index.php comme index par défaut mais en donnant la priorité à index.html car index.html est venu avant * index.php. Je veux dire par là que vous avez à la fois index.html et index.php dans le même répertoire, l'index.html sera utilisé comme index par défaut sauf que vous écrivez ** index.php * avant index.hml
J'espère que cela aide quelqu'un ... Happy Coding
la source
Celui-ci fonctionne comme un charme!
Première
puis après cela de
à
la source