.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>