Getting HTTP Status Codes from the Command Line

How you can go about getting HTTP status codes from your terminal

In my post about HTTP Status Codes and their usefulness for SEO I briefly mentioned a unix command you can run to retrieve the status code for any URL;

curl -I
HTTP/1.1 200 OK

I wanted to talk about this in a bit more depth. I have recorded a video if you prefer watching SEO stuff to reading it.

The command we end up using is;

curl -Is | head -1 | awk '{print $2}'

What this is saying is;

  • Give me just the head information from the request (curl -I)
  • Don’t give me feedback when retrieving the request (curl -s)
  • I only care about the first row of whatever is returned (head -1)
  • I only care about the second column of what is returned (awk '{print $2}')

Recent posts View all


How to ignore Bullet in RSpec tests

Using Bullet during a test can pick up mistakes but also has false negatives; here is an easy way to ignore them


How we used Nokogiri to fix a sizing issue in YouTube's oEmbed

At some point, one of our calls to YouTube's oEmbed endpoint was returning videos way too small; we fixed in in our Rails application by using Nokogiri