SSI est actuellement configuré pour fonctionner dans nos pages HTML comme suit
<!--#INCLUDE file="/includes/header.inc"-->
Nous utilisons également PHP sur notre serveur et nous essayons d'éviter de créer deux modèles distincts pour PHP et HTML afin d'inclure le même fichier. Je sais que, dans PHP, je pourrais inclure le fichier avec la commande suivante.
include 'header.inc';
Cela ne fonctionnera pas dans une page HTML, est-il donc possible de configurer IIS 7 pour que la directive #include
fonctionne dans les pages HTML et PHP? Y a-t-il une meilleure façon de faire cette période?
Cela ne fonctionnera pas dans une page HTML, il est donc possible de configurer IIS 7 pour que la directive #include fonctionne dans les deux codes HTML. et PHP pages? Y a-t-il une meilleure façon de faire cette période?
Ce qui pourrait vous simplifier la tâche dans l’ensemble serait de configurer IIS pour utiliser PHP le code contenu dans les fichiers .html
au lieu de .php
. Ensuite, vous pourrez utiliser le code PHP directement dans vos pages HTML et utiliser soit la directive #include
, soit le code PHP include
.
Pour ce faire, dans IIS 7, suivez les étapes décrites ici: Configurez IIS pour gérer PHP Requests , mais modifiez-le: Request path: *.php
à -> Request path: *.html
Je pense que votre instinct est juste Blake, évitez d’ajouter .html/.htm au moteur PHP si ce n’est pas absolument nécessaire. La documentation de PHP évoque légèrement le fait que cela pourrait avoir un impact sur les performances, mais n'entre pas dans les détails ... dans un article sur le fait de cacher PHP aux attaquants/visiteurs .
Voir PHP Documentation: Masquer PHP
Votre question, basée sur la ligne d'objet de ce fil, est déduite de la manière suivante: [Y at-il] inclut ce travail en HTML et PHP dans IIS 7 sous Windows Serveur 2008 [?] .
Si SSI est déjà activé sur IIS, cela ne fonctionne-t-il pas déjà dans PHP en tant que HTML normal, comme vous l'avez fait? Ou cherchez-vous encore une troisième option d'inclusion qui ne soit pas un module SSI ou une fonction PHP engine/include qui fonctionne à la fois en HTML et en code PHP? Si SSI fait ce que vous voulez, et , vous l'avez déjà chargé sur votre serveur Windows et a du temps et des ressources consacrés au développement et à la sécurisation, ET cela fonctionne avec PHP, pourquoi chercher une autre option? Je ne veux pas dire que ce soit une confrontation, juste pour en apprendre un peu plus sur le problème que vous essayez de résoudre.
Sinon, cela fonctionne de la même manière:
. Fichiers HTML
<!--#INCLUDE file="/includes/header.inc"-->
. Fichiers php
<?php
echo "<!--#INCLUDE file=\"/includes/header.inc\"-->\n";
?>