このエントリーをはてなブックマークに追加


ブラウザからのHTTPヘッダーを表示する・getallheaders

ブラウザからPHPスクリプトにアクセスした時のHTTPヘッダー内容を確認したい場合は
getallheadersを使うと便利です。
以下にPHPスクリプトと動作結果を記します。


スポンサーリンク

関連資料

getallheaders関数でヘッダー内容を表示する

getallheaders関数のページにあるサンプルコードそのままです。
ブラウザ上で見やすくするため<pre>...</pre>を追記しただけです。

sakura@vmu01:~$ cat /var/www/showheader.php 
<pre>
<?php
foreach (getallheaders() as $name => $value) {
    echo "$name: $value\n";
}
?>
</pre>

実際にブラウザからアクセスした時のスクリーンショットです。

01.gif

curlコマンドでアクセスしてみる

curlコマンドに-vオプションをつけて、HTTPによるやり取りを確認してみます。

  • crulコマンドにてshowheader.phpにアクセス
    sakura@sakura:~$ curl -v http://dev01/showheader.php
    * About to connect() to dev01 port 80 (#0)
    *   Trying 192.168.56.11... connected
     
  • curlコマンドがapache(php)に送信したヘッダー
    > GET /showheader.php HTTP/1.1
    > User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
    > Host: dev01
    > Accept: */*
    > 
     
  • apache(php)が返却したデータ(ブラウザに返却したものと同じ)
    < HTTP/1.1 200 OK
    < Date: Sun, 15 Sep 2013 14:51:13 GMT
    < Server: Apache/2.2.22 (Ubuntu)
    < X-Powered-By: PHP/5.3.10-1ubuntu3.8
    < Vary: Accept-Encoding
    < Content-Length: 150
    < Content-Type: text/html
    < 
  • 以下の部分がphpスクリプトが生成した部分になります。
    内容は上記のcurlコマンドが送信したヘッダー情報と同じになります。
    <pre>
    User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
    Host: dev01
    Accept: */*
    </pre>
    
    * Connection #0 to host dev01 left intact
    * Closing connection #0

以上、getallheaders関数でヘッダー内容を表示する方法でした。


スポンサーリンク

添付ファイル: file01.gif 531件 [詳細] fileshowheader.php 537件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:36:05