I’d like to study how headers are sent and received.
I know about PHP’s header function and think I can just look at an actual request header (e.g. using Firebug) and make identical requests to a server (including spoofing the User-Agent). Is this correct?
The other problem is how do I get the header responses back? I want to analyze the response.
Thanks.
EDIT:
@Tatu, here’s the code I ran:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.google.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/540.0 (KHTML, like Gecko) Ubuntu/10.10 Chrome/8.1.0.0 Safari/540.0');
$result = curl_exec($ch);
curl_close($ch);
header('Content-type: text/plain');
echo($result);
You might want to take a look at cURL which will allow you to make requests and set and inspect headers. PHP’s
headeronly sets headers for the current page, you cannot use that to spoof your user agent – these are headers set by the server and as such have no such significance.The basic structure of a cURL request with custom headers might be something like this:
The beginning of
$resultwill now contain the headers received from the server.