Ich habe meine .htaccess-Datei wie folgt eingestellt:
Header set MyHeader "I'm Set!"
Wenn ich zu diesem Verzeichnis ( http://example.com/test/) gehe , das keine Standardindexdatei enthält, und die Netzwerkaktivität (in diesem Fall mit Chrome) ansehe, kann ich sehen, dass der Header gesendet wird. Wenn ich zu einer PHP-Datei ( http://example.com/test/test.php) gehe , wird der Header nicht gesendet.
Ich habe eine index.html erstellt (mit einfach <pre>Hials Inhalt) und sie wird gesendet. Ich ändere den Dateinamen in .php, kein Header. Wenn ich das Original test.phpin ändere test.html, wird der Code ausgegeben , der nach Müll aussieht , und der Header wird gesendet. Wenn ich zu wechsle test.php, test.pngwird ein fehlerhaftes Bildsymbol angezeigt und der Header wird gesendet.
Ohne über die oben genannten hinausgehende Tests in Bezug auf MIME-Typ und Dateierweiterungen hinaus scheinen nur .phpDateien (legitim oder anderweitig) so eingestellt zu sein, dass entweder keine .htaccess-Regeln gelten oder speziell die Anweisungen mod_headers. Aber ich weiß nicht, wie ich das testen soll, und da es sich um einen gemeinsam genutzten Server handelt, habe ich keinen httpd.confZugriff darauf , mich umzuschauen.
Irgendwelche Ideen, warum Apache das Senden von Headern für PHP-Dateien überspringen würde?
Ich habe auch versucht:
<FilesMatch "\.(php)$">
Header set MyHeader "I'm Set!"
</FilesMatch>