web-dev-qa-db-fra.com

quand utiliser index.php au lieu de index.html

Je suis relativement nouveau en php. Il y a une chose très fondamentale qui m'a troublé. Je comprends que php est utilisé pour rendre les sites Web dynamiques. Je comprends également que php est l’un des nombreux langages de script côté serveur pouvant être utilisés pour créer des sites Web dynamiques. 

Cependant, ce que je ne comprends pas, c'est que quand dois-je utiliser une page index.php. Par exemple, si je n'ai qu'une simple page de connexion sur ma page d'index, il pourrait très bien s'agir d'une simple page HTML. Droite? Alors pourquoi voudrais-je le faire index.php au lieu de index.html? 

Un exemple de situation type serait formidable.

27
qre0ct

Vous devrez choisir l’extension PHP (.php) lorsque vous voulez que le code php soit exécuté dans le fichier. Le code PHP est un code compris entre les balises <?php ou <? d'ouverture et les balises ?> de fermeture.

Si aucun code PHP ne doit être exécuté, vous pouvez utiliser l'extension .html.

Habituellement, lorsque vous utilisez l'extension .php, vous indiquez au serveur Web qu'il doit utiliser un interpréteur php pour traiter le fichier avant qu'il ne soit transmis au navigateur. L’interprète php remplacera alors tout le contenu entre <?php et ?> par la sortie du code PHP. Juste comme si vous l'aviez écrit manuellement. Le fichier traité sera alors livré au navigateur.

Toutefois, l'utilisation de l'extension .php pour indiquer au serveur Web de traiter le code php est configurable. Si vous le souhaitez, vous pouvez également utiliser d'autres extensions de fichier.

Il y a une autre chose à souligner. Lorsque vous ne tapez que le chemin de l’URL (sans nom de fichier) comme ceci:

http://www.myserver.com/

il existe un ordre d'extensions (noms de fichiers) que le serveur Web (Apache) recherche pour un document d'index. Par exemple, une configuration Apache peut contenir une section du type:

<IfModule mod_dir.c>
      DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

Cela signifie que le document d'index est recherché dans l'ordre ci-dessus. Cela signifie que si vous placez un fichier index.html et un fichier index.php dans le même dossier - et que la configuration ci-dessus est toujours définie -, le fichier index. html sera fourni par le serveur.

41
hek2mgl

Un site Web ne fera pas de mal si vous servez chaque page au format .php. Apache est très rapide pour servir n'importe quel php, encore moins un qui ne contient que du HTML statique.

En tant que débutant, vous constaterez que php vous sera utile en vous permettant de créer de simples modèles. Par exemple, l’en-tête et le pied de page du site peuvent être écrits dans un fichier, puis inclus dans toutes les autres pages.

7
LessQuesar

Ce n'est pas grave si vous utilisez index.php ou index.html. Vous pouvez utiliser n'importe qui des deux. La seule chose est que vous avez besoin de PHP (ou de tout autre langage de script côté serveur) pour rendre votre site dynamique.

Comme vous avez une page de connexion, vous pouvez sûrement la définir sous la forme inde.html, mais vos logiques devront être soit dans un fichier différent, soit incorporées dans HTMl. 

5
Sankalp Mishra

Vous pouvez utiliser celle que vous préférez:.

Mais une méthode que je suppose et que je suppose que la plupart des autres utilisent consiste simplement à créer tous les fichiers php de vos pages. En effet, vous pouvez inclure un document html dans le fichier php et l’afficher de la même manière. Mais vous ne pouvez pas faire de requêtes php à partir d'un fichier html, il est donc facile de toujours utiliser php si vous souhaitez y ajouter des scripts php.

Index.php:

<?php
$var = 5;
?>
<html>
<head>
<title>My Page</title>
</head>
<body>
<h2>Your variable was <?php echo $var; ?></h2>
</body>
</html>
5
Devon Bernard

Par défaut, le serveur Apache a besoin d'un fichier avec l'extension .php pour analyser le code PHP qu'il contient. Toutefois, si vous le souhaitez, vous pouvez configurer votre serveur en ajoutant une seule ligne au fichier de configuration pour utiliser des fichiers portant toute extension avec le code PHP. Vous pouvez modifier vous-même Apache pour prendre en charge php également en extension .HTML.

5

En termes simples, vous pouvez facilement accéder au fichier index.html et obtenir les données qu'il contient. Mais index.php est difficile d'accès. Pour votre application simple, index.html fera l'affaire. Si vous planifiez une application importante et sécurisée, optez pour index.php

3
Php Geek

C'est parce que parfois vous pouvez avoir une logique écrite sur index.php. Par exemple, vous pouvez vérifier si l'utilisateur est connecté ou non, puis rediriger l'utilisateur vers une page spécifique. Vous pouvez également effectuer une redirection par périphérique, comme dans le cas des périphériques mobiles.

Vous pouvez toujours choisir de créer index.html mais vous ne savez pas quand vous aurez peut-être besoin d'une certaine logique.

3
Arvind Bhardwaj

J'ai aussi le même problème compagnon. Mais, je pense que .php est bien meilleur que .html car il est plus dynamique et vous pouvez aussi faire plein de trucs cool.

1
Zeus

Par exemple, dans mon index.php ou une autre page principale, j'utilise principalement php parce que j'utilise des variables avec eux dans le reste de mon site:

<?php 
     $sitepath="http://www.example.com/public";
     $author="your name here";
?>

Parce que je <?php echo $sitepath ?> à chaque fois que je lie une image sur mon site Web pour qu'elle ne se casse pas ou quelque chose du genre. Comme je réutilise le nom tout le temps, j’utilise .php pour pouvoir disposer de ce service, car si j’utilise le nom, je peux le changer globalement.

Je pense que des pages simples comme 404.html, aboutus.html ou ViewOneBlogPost.html pourraient être une page HTML, vous n'aurez peut-être pas besoin de fonctionnalités/variables pour cela.

0
Maddocks

Pour vérifier les paramètres actuels de priorité d'extension de fichier dans Apache2 avec Linux

/etc/Apache2/mods-enabled/dir.conf

0
aditya