Key_Master - 7:53 pm on Jul 9, 2013 (gmt 0)
There shouldn't be a Content-Type header. In fact, most of those headers wouldn't be appropriate for a redirect. Keep your redirect headers simple, like you have in your original post.
** Added **
When you add a Content-Type header to a redirect, it considers the 302 to be a html page- no redirect is performed. The server adds extra headers to html pages, e.g. Content-Length and Expires which is why they're present. I'm not sure about the Vary header on a redirect but I think the use of this header would be better served on the page that the user-agent is redirected to. The same thing with Set-Cookie. I've run into issues with cookies served on a redirect.