.htaccessファイルを次のように設定しました。
Header set MyHeader "I'm Set!"
http://example.com/test/デフォルトのインデックスファイルのないそのディレクトリ()に移動し、ネットワークアクティビティ(この場合はChrome)を表示すると、ヘッダーが送信されていることがわかります。PHPファイル(http://example.com/test/test.php)に移動すると、ヘッダーが送信されません。
index.htmlを(単に<pre>Hiコンテンツとして)作成し、送信されます。ファイル名を.phpヘッダーなしに変更します。orignal test.phpをに変更するtest.htmlと、ゴミのようなコードが出力され、ヘッダーが送信されます。に変更test.phpするtest.pngと、壊れた画像アイコンが表示され、ヘッダーが送信されます。
したがって、mime-typeとファイル拡張子に関して上記以外のテストを行わないと、.phpファイル(legitまたはその他)のみが.htaccessルールを適用しないように設定されているか、具体的にはmod_headersディレクティブが設定されているようです。しかし、これをテストする方法がわかりません。これは共有サーバーであるhttpd.confため、ざっと見回すことはできません。
Apacheがphpファイルのヘッダーの送信をスキップする理由に関するアイデアはありますか?
私も試しました:
<FilesMatch "\.(php)$">
Header set MyHeader "I'm Set!"
</FilesMatch>