4

次のように、すべてのリクエストに応答ヘッダーを追加するディレクティブを持つ vhost 構成があります。

Header append X-MyHeader "Info Stuff in here"

このサーバーで実行するphpinfo()と、このヘッダーが apache2handler セクションのHTTP Headers Information as HTTP Response Headersという見出しの下に含まれていることがわかります。PHP はどうやらこの情報にアクセスできるようです。

スクリプトのこの情報を取得しようheaders_list()としましたが、見つかりません。apache_response_headers()

Google 検索では解決策が見つかりませんでした。これはまれなケースのようです。SO に関するもう 1 つの質問では、サーバーに再度クエリを実行してヘッダーを確認するという回答が得られましたが、提供するすべてのリクエストに関する情報が必要なため、これは行いません。サブリクエストはパフォーマンスのペナルティが大きすぎるようです。

値はどのようにphpinfo()わかりますか?

$_SERVERUpdate1: PHP は、などのスーパーグローバル内の値を表示しません$_ENV。phpinfo ページで表示される唯一の場所は、上記のセクションです。そうでなければ、これは簡単なことではありません。

4

1 に答える 1

0

これを行うこともできますが、ファイル内で印刷される他のものよりも上にあることを確認してください。そうしないと、エラーが発生します。

<?php
foreach($_SERVER as $h=>$v)
 if(preg_match('/HTTP_(.+)/',$h,$hp))
   echo "<li>$h = $v</li>\n";
?>

編集: FastCGI を有効にしていますか?

このリンクを試してください: $_SERVER ヘッダーが PHP にありませんが、Python に存在します

于 2012-10-12T11:17:08.910 に答える