J'ai mon fichier .htaccess défini comme suit:
Header set MyHeader "I'm Set!"
Si je vais dans ce répertoire ( http://example.com/test/
), qui n'a pas de fichier d'index par défaut, et que je visualise l'activité réseau (dans ce cas avec Chrome), je peux voir que l'en-tête est envoyé. Si je vais dans un fichier php ( http://example.com/test/test.php
), l'en-tête n'est pas envoyé.
J'ai créé un index.html (avec simplement <pre>Hi
comme contenu) et il est envoyé. Je change le nom du fichier en .php
, pas d'en-tête. Si je change l'orignal test.php
en test.html
, il produit le code qui ressemble à des ordures et l'en-tête est envoyé. Si je passe test.php
à test.png
, j'obtiens une icône d'image cassée et l'en-tête est envoyé.
Ainsi, sans tester au-delà de ce qui précède en termes de type mime et d'extensions de fichiers, il semble que seuls les .php
fichiers (légitimes ou non) sont définis pour ne pas appliquer de règles .htaccess ou spécifiquement les directives mod_headers. Mais je ne sais pas comment tester cela et parce que c'est un serveur partagé, je n'ai pas httpd.conf
accès à fouiner.
Des idées sur la raison pour laquelle apache ignorerait l'envoi d'en-têtes pour les fichiers php?
J'ai aussi essayé:
<FilesMatch "\.(php)$">
Header set MyHeader "I'm Set!"
</FilesMatch>