::  Posts  ::  RSS  ::  ◂◂RSS  ::  Contact

See Raw Headers with Netcat

October 5th, 2015
tech  [html]
Getting response headers is easy: run curl -D- -o/dev/null -sS [url] or load the site in a browser with the networking tab open. Getting request headers is harder, because webservers don't have a way to dump this exactly as they received it. Yes, you can set them to log specific headers, but logging all headers exactly as they came over the wire isn't something I see in nginx or apache. Netcat can help here. Start it up on some unused port:
    nc -lp 8070
Now make the thing you're debugging visit yoursite:8070. Netcat will print out what headers you got:
    GET / HTTP/1.1
    Host: www.jefftk.com:8070
    Referer: http://www.jefftk.com/...
    Accept-Encoding: gzip,deflate
    Cache-Control: no-store, no-cache
    Accept-Language: en-US
    Connection: Keep-alive
    Accept: */*
    Accept-Encoding: gzip,deflate
    ...
See the duplicate Accept-Encoding header? It turned out that A was adding an extra encoding header which then made B disable gzip. [1] Once I had the raw headers as sent it was pretty clear what the problem was.

(Because the problem was a duplicated header I'm glad I didn't go with a higher level tool that might have masked that problem by storing headers in hashtable or something.)


[1] Sniffing the traffic would have been ideal, but I wasn't in a position to get in between them.

Comment via: google plus, facebook

Recent posts on blogs I like:

No need to explain

I haven’t been posting much lately for several reasons, but mainly I just haven’t felt the desire to post. My posts usually come from trying to figure something out through reflection, or to explain myself to myself. I haven’t felt the need to explain mys…

via Holly Elmore December 8, 2019

Grad school is worse for public health than STDs

(The way you can *really* tell something is horribly wrong is that grad students find PhD Comics darkly funny, not just dark.)

via benkuhn.net December 8, 2019

I’m Giving a Talk About Construction Costs Tomorrow

By popular demand, I’m giving the talk I gave 2 weeks ago at NYU, again. The database will be revised slightly to include more examples (like Ukraine, which I added between when I gave the talk and when I blogged about it), and I may switch around a few t…

via Pedestrian Observations December 2, 2019

more     (via openring)

More Posts:


  ::  Posts  ::  RSS  ::  ◂◂RSS  ::  Contact